Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server en Linux
Puede realizar copias de seguridad de bases de datos de SQL Server en Linux con muchas opciones diferentes. En un servidor Linux, puede usar sqlcmd para conectarse al SQL Server y realizar copias de seguridad. En Windows, puede conectarse a SQL Server en Linux y realizar copias de seguridad con la interfaz de usuario. La funcionalidad de copia de seguridad es la misma en todas las plataformas. Por ejemplo, puede realizar copias de seguridad de bases de datos de forma local, en unidades remotas o en copias de seguridad de SQL Server en una URL para Azure Blob Storage.
Importante
SQL Server en Linux solo admite la copia de seguridad en Azure Blob Storage mediante blobs en bloques. El uso de una clave de almacenamiento para la copia de seguridad y la restauración hará que se utilice un blob en páginas, lo que no se admite. En su lugar, utilice una firma de acceso compartido. Para obtener información sobre los blobs de bloque frente a los blobs de página, consulte Copia de seguridad en blob de bloque frente a blob de página.
Realizar una copia de seguridad de una base de datos
En el ejemplo siguiente, sqlcmd se conecta a la instancia de SQL Server local y realiza una copia de seguridad completa de una base de datos de usuario denominada demodb.
sqlcmd -S localhost -U sa -Q "BACKUP DATABASE [demodb] TO DISK = N'/var/opt/mssql/data/demodb.bak' WITH NOFORMAT, NOINIT, NAME = 'demodb-full', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Al ejecutar el comando, SQL Server pide una contraseña. Después de escribir la contraseña, el shell devuelve los resultados del progreso de la copia de seguridad. Por ejemplo:
Password:
10 percent processed.
21 percent processed.
32 percent processed.
40 percent processed.
51 percent processed.
61 percent processed.
72 percent processed.
80 percent processed.
91 percent processed.
Processed 296 pages for database 'demodb', file 'demodb' on file 1.
100 percent processed.
Processed 2 pages for database 'demodb', file 'demodb_log' on file 1.
BACKUP DATABASE successfully processed 298 pages in 0.064 seconds (36.376 MB/sec).
Realice una copia de seguridad del registro de transacciones.
Si la base de datos está en el modelo de recuperación completa, también puede realizar copias de seguridad del registro de transacciones para obtener opciones de restauración más pormenorizadas. En el ejemplo siguiente, sqlcmd se conecta a la instancia de SQL Server local y realiza una copia de seguridad del registro de transacciones.
sqlcmd -S localhost -U sa -Q "BACKUP LOG [demodb] TO DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak' WITH NOFORMAT, NOINIT, NAME = N'demodb_LogBackup', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5"
Restaurar una base de datos
En el ejemplo siguiente, sqlcmd se conecta a la instancia local de SQL Server y restaura la base de datos demodb. Se usa la opción NORECOVERY para permitir restauraciones adicionales de copias de seguridad de archivos de registro. Si no tiene previsto restaurar otros archivos de registro, quite la opción NORECOVERY.
sqlcmd -S localhost -U sa -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/data/demodb.bak' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"
Tip
Si usa NORECOVERY accidentalmente pero no tiene copias de seguridad adicionales de archivos de registro, ejecute el comando RESTORE DATABASE demodb sin parámetros adicionales. Esto finaliza la restauración y deja operativa la base de datos.
Restauración del registro de transacciones
El comando siguiente restaura la copia de seguridad anterior del registro de transacciones.
sqlcmd -S localhost -U sa -Q "RESTORE LOG demodb FROM DISK = N'/var/opt/mssql/data/demodb_LogBackup.bak'"
Realización de copias de seguridad y restaurar con SQL Server Management Studio (SSMS)
Puede usar SQL Server Management Studio (SSMS) desde un equipo Windows para conectarse a una base de datos Linux y realizar una copia de seguridad a través de la interfaz de usuario.
Note
Instale la versión más reciente de SQL Server Management Studio (SSMS). Para más información sobre cómo usar SSMS, vea Uso de SQL Server Management Studio en Windows para administrar SQL Server en Linux.
Los pasos siguientes le guían durante la realización de una copia de seguridad con SSMS.
Inicie SSMS y conéctese a su instancia de SQL Server en Linux.
En el Explorador de objetos, haga clic con el botón derecho en la base de datos, seleccione Tareas y, posteriormente, Hacer copia de seguridad....
En el cuadro de diálogo Hacer copia de seguridad de base de datos, compruebe los parámetros y las opciones y seleccione Aceptar.
SQL Server completa la copia de seguridad de base de datos.
Restauración con SQL Server Management Studio (SSMS)
Los siguientes pasos le guían durante la restauración de una base de datos con SSMS.
En SSMS, haga clic con el botón derecho en Bases de datos y seleccione Restaurar base de datos...
En Origen, seleccione Dispositivo: y, a continuación, seleccione los puntos suspensivos (...).
Busque el archivo de copia de seguridad de base de datos y seleccione Aceptar.
En Plan de restauración, compruebe el archivo de copia de seguridad y la configuración. Selecciona Aceptar.
SQL Server restaura la base de datos.
Contenido relacionado
- Creación de una copia de seguridad completa de la base de datos
- Copia de seguridad de un registro de transacciones
- BACKUP (Transact-SQL)
- Copia de seguridad de SQL Server en una dirección URL para Azure Blob Storage
Contribuya a la documentación de SQL
¿Sabía que puede editar el contenido de SQL usted mismo? Si lo hace, no solo contribuirá a mejorar la documentación, sino que también se le reconocerá como colaborador de la página.
Para obtener más información, consulte Editar documentación de Microsoft Learn.