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.
Hace una copia de seguridad de una base de datos SQL.
Selección de un producto
En la fila siguiente, seleccione el nombre del producto que le interese; de esta manera, solo se mostrará la información de ese producto.
Para obtener más información sobre las convenciones de sintaxis, vea Transact-SQL convenciones de sintaxis.
* SQL Server *
SQL Server
Realiza una copia de seguridad de una base de datos de SQL Server completa para crear una copia de seguridad de la base de datos o uno o varios archivos o grupos de archivos para crear una copia de seguridad de archivos (BACKUP DATABASE). Además, en el modelo de recuperación completa o en el modelo de recuperación optimizado para cargas masivas de registros, realiza una copia de seguridad del registro de transacciones de la base de datos para crear una copia de seguridad de registros (BACKUP LOG).
Sintaxis
--Back up a whole database
BACKUP DATABASE { database_name | @database_name_var }
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL
| <general_WITH_options> [ , ...n ] } ]
[ ; ]
--Back up specific files or filegroups
BACKUP DATABASE { database_name | @database_name_var }
<file_or_filegroup> [ , ...n ]
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL | <general_WITH_options> [ , ...n ] } ]
[ ; ]
--Create a partial backup
BACKUP DATABASE { database_name | @database_name_var }
READ_WRITE_FILEGROUPS [ , <read_only_filegroup> [ , ...n ] ]
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { DIFFERENTIAL | <general_WITH_options> [ , ...n ] } ]
[ ; ]
--Back up the transaction log (full and bulk-logged recovery models)
BACKUP LOG
{ database_name | @database_name_var }
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { <general_WITH_options> | <log_specific_options> } [ , ...n ] ]
[ ; ]
--Back up all the databases on an instance of SQL Server (a server)
ALTER SERVER CONFIGURATION
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON
[ ; ]
BACKUP SERVER
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { METADATA_ONLY
| <general_WITH_options> [ , ...n ] } ]
[ ; ]
--Back up a group of databases
ALTER DATABASE <database>
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON
ALTER DATABASE <...>
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON
...
BACKUP GROUP { <database> [ , ... ] }
TO <backup_device> [ , ...n ]
[ <MIRROR TO clause> ] [ next-mirror-to ]
[ WITH { METADATA_ONLY
| <general_WITH_options> [ , ...n ] } ]
[ ; ]
<backup_device>::=
{
{ logical_device_name | @logical_device_name_var }
| { DISK
| TAPE
| URL } =
{ 'physical_device_name' | @physical_device_name_var | 'NUL' }
}
<MIRROR TO clause>::=
MIRROR TO <backup_device> [ , ...n ]
<file_or_filegroup>::=
{
FILE = { logical_file_name | @logical_file_name_var }
| FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
}
<read_only_filegroup>::=
FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
<general_WITH_options> [ , ...n ] ::=
--Backup Set Options
COPY_ONLY
| [ COMPRESSION [ ( ALGORITHM = { MS_XPRESS | ZSTD | accelerator_algorithm } [ , LEVEL = { LOW | MEDIUM | HIGH } ] ) ] | NO_COMPRESSION ]
| DESCRIPTION = { 'text' | @text_variable }
| NAME = { backup_set_name | @backup_set_name_var }
| CREDENTIAL
| ENCRYPTION
| FILE_SNAPSHOT
| { EXPIREDATE = { 'date' | @date_var }
| RETAINDAYS = { days | @days_var } }
| { METADATA_ONLY | SNAPSHOT }
--Media set options
{ NOINIT | INIT }
| { NOSKIP | SKIP }
| { NOFORMAT | FORMAT }
| MEDIADESCRIPTION = { 'text' | @text_variable }
| MEDIANAME = { media_name | @media_name_variable }
| BLOCKSIZE = { blocksize | @blocksize_variable }
--Data Transfer Options
BUFFERCOUNT = { buffercount | @buffercount_variable }
| MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
--Error Management Options
{ NO_CHECKSUM | CHECKSUM }
| { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
--Compatibility Options
RESTART
--Monitoring Options
STATS [ = percentage ]
--Tape Options
{ REWIND | NOREWIND }
| { UNLOAD | NOUNLOAD }
--Encryption Options
ENCRYPTION (ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY } , encryptor_options ) <encryptor_options> ::=
SERVER CERTIFICATE = Encryptor_Name | SERVER ASYMMETRIC KEY = Encryptor_Name
<log_specific_options> [ , ...n ] ::=
--Log-specific Options
{ NORECOVERY | STANDBY = undo_file_name }
| NO_TRUNCATE
Argumentos
DATABASE
Especifica una copia de seguridad completa de la base de datos. Si se especifica una lista de archivos y grupos de archivos, solo se realiza la copia de seguridad de esos archivos o grupos de archivos. Durante una copia de seguridad completa o diferencial de la base de datos, SQL Server realiza una copia de seguridad suficiente del registro de transacciones para generar una base de datos coherente cuando se restaura la copia de seguridad.
Al restaurar una copia de seguridad creada por BACKUP DATABASE (una copia de seguridad de datos), se restaura toda la copia de seguridad. Solo una copia de seguridad del registro se puede restaurar hasta un momento o transacción concretos dentro de la copia de seguridad.
Nota:
Solo se puede realizar una copia de seguridad completa de la base de datos master.
REGISTRO
Especifica que solo se realizará la copia de seguridad del registro de transacciones. Se realiza la copia de seguridad del registro desde la última copia de seguridad del registro ejecutada correctamente hasta el final actual del registro. Para poder crear la primera copia de seguridad de registros, debe crear una copia de seguridad completa.
Puedes restaurar una copia de seguridad de log a un momento o transacción específica dentro de la copia especificando WITH STOPAT, STOPATMARK, o STOPBEFOREMARK en tu RESTORE sentencia LOG.
Nota:
Después de una copia de seguridad del registro típica, algunas entradas del registro de transacciones se quedan inactivas, a menos que se especifique WITH NO_TRUNCATE o COPY_ONLY. El registro se trunca después de que todos los registros de uno o varios archivos del registro virtual se queden inactivos. Si el registro no se trunca después de las copias de seguridad rutinarias del registro, es posible que algo retrase el truncamiento del registro. Para más información, vea Factores que pueden ralentizar el truncamiento del registro.
GROUP (<base de datos>, ... n)
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
Realice una copia de seguridad de un grupo de bases de datos. Usa la copia de seguridad de instantáneas. Se requiere WITH METADATA_ONLY. Consulte Crear una copia de seguridad de instantáneas de Transact-SQL.
SERVIDOR
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
Realice una copia de seguridad de todas las bases de datos en una instancia de SQL Server. Usa la copia de seguridad de instantáneas. Se requiere WITH METADATA_ONLY. Consulte Crear una copia de seguridad de instantáneas de Transact-SQL.
METADATA_ONLY
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
Necesario para la copia de seguridad de instantáneas.
BACKUP SERVER o BACKUP GROUP... Vea Crear una copia de seguridad de instantáneas de Transact-SQL.
METADATA_ONLY es sinónimo de SNAPSHOT. La interfaz de dispositivo virtual (VDI) usa SNAPSHOT. Para obtener información sobre VDI, consulte Referencia de interfaces de dispositivo virtual (VDI).
{ database_name | @database_name_var }
La base de datos desde la que se realiza la copia de seguridad del registro de transacciones, la base de datos parcial o la base de datos completa. Si se proporciona como variable (@database_name_var), este nombre se puede especificar como una constante de cadena (nombre de basede = @database_name_var) o como una variable de tipo de datos de cadena de caracteres, excepto para los tipos de datos ntext o text.
Nota:
No se puede realizar una copia de seguridad de la base de datos reflejada en una asociación de creación de reflejo de la base de datos.
< > file_or_filegroup [ , ... n ]
Se usa solo con BACKUP DATABASE, especifica un archivo de base de datos o un grupo de archivos que se va a incluir en una copia de seguridad de archivos, o especifica un archivo o grupo de archivos de solo lectura que se va a incluir en una copia de seguridad parcial.
ARCHIVO = { logical_file_name | @logical_file_name_var }
Nombre lógico de un archivo o una variable cuyo valor equivale al nombre lógico de un archivo que se va a incluir en la copia de seguridad.
FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
Nombre lógico de un grupo de archivos o una variable cuyo valor equivale al nombre lógico de un grupo de archivos que se va a incluir en la copia de seguridad. En el modelo de recuperación simple, se permite la copia de seguridad de un grupo de archivos solo si se trata de un grupo de archivos de solo lectura.
Nota:
Considere la posibilidad de utilizar copias de seguridad de archivos cuando el tamaño y los requisitos de rendimiento de la base de datos no permitan realizar una copia de seguridad completa de la base de datos. El dispositivo NUL se puede usar para probar el rendimiento de las copias de seguridad, pero no debe usarse en entornos de producción.
n
Marcador de posición que indica que se pueden especificar varios archivos y grupos de archivos en una lista separada por comas. El número es ilimitado.
Para obtener más información, vea Full File Backups (SQL Server) y Back Up Files and Filegroups.
READ_WRITE_FILEGROUPS [ , FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var } [ , ... n ] ]
Especifica una copia de seguridad parcial. Una copia de seguridad parcial incluye todos los archivos de lectura/escritura en una base de datos: el grupo de archivos principal y los grupos de archivos secundarios de lectura/escritura, así como los grupos de archivos o archivos de solo lectura especificados.
READ_WRITE_FILEGROUPS
Especifica que en la copia de seguridad parcial se copiarán todos los grupos de archivos de lectura/escritura. Si la base de datos es de solo lectura, READ_WRITE_FILEGROUPS incluye tan solo el grupo de archivos principal.
Importante
Enumerar explícitamente los grupos de archivos de lectura y escritura mediante FILEGROUP en lugar de READ_WRITE_FILEGROUPS crea una copia de seguridad de archivos.
FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
Nombre lógico de un grupo de archivos de solo lectura o una variable cuyo valor equivale al nombre lógico de un grupo de archivos de solo lectura que se va a incluir en la copia de seguridad parcial. Para más información, vea "<file_or_filegroup>" anteriormente en este artículo.
n
Marcador de posición que indica que se pueden especificar varios grupos de archivos de solo lectura en una lista separada por comas.
Para obtener más información sobre las copias de seguridad parciales, consulte Partial Backups (SQL Server).
TO <backup_device> [ , ... n ]
Indica que el conjunto complementario de dispositivos de copia de seguridad es un conjunto de medios no admirado o el primero de los reflejos dentro de un conjunto de medios reflejados (para el que se declaran una o varias MIRROR TO cláusulas).
<backup_device>
Especifica el dispositivo de copia de seguridad físico o lógico que se va a utilizar para la operación de copia de seguridad.
{ logical_device_name | @logical_device_name_var }
Aplica a: SQL Server.
Nombre lógico del dispositivo de copia de seguridad al que se realiza una copia de seguridad de la base de datos. El nombre lógico debe seguir las reglas definidas para los identificadores. Si se proporciona como variable (@logical_device_name_var), el nombre del dispositivo de copia de seguridad se puede especificar como una constante de cadena (@logical_device_name_var = nombre del dispositivo lógico de copia de seguridad) o como una variable de cualquier tipo de datos de cadena de caracteres, excepto para los tipos de datos ntext o text .
{ DISCO | CINTA | URL} = { 'physical_device_name' | @physical_device_name_var | 'NUL' }
Aplica a: SQL Server.
Especifica un archivo de disco o un dispositivo de cinta, o una dirección URL.
El formato de dirección URL se usa para crear copias de seguridad en Microsoft Azure Blob Storage o almacenamiento de objetos compatible con S3. Para más información y ejemplos, consulte:
- SQL Server copia de seguridad y restauración con Azure Blob Storage y Quickstart: copia de seguridad y restauración de SQL en Azure Blob Storage.
- La copia de seguridad y restauración en el almacenamiento compatible con S3 se introdujo en SQL Server 2022 (16.x). Revise Copia de seguridad y restauración SQL Server con el almacenamiento de objetos compatible con S3. Revise también la opción de SQL Server realizar una copia de seguridad en la dirección URL del almacenamiento de objetos compatible con S3.
Puede realizar una copia de seguridad en Microsoft Azure Blob Storage mediante una identidad administrada a partir de:
- SQL Server 2025 (17.x): Copia de seguridad en la dirección URL con identidad administrada: SQL Server habilitada por Azure Arc
- SQL Server 2022 (16.x) CU 17 para SQL Server en máquinas virtuales de Azure: Backup y restauración en la dirección URL mediante identidades administradas
Nota:
El dispositivo de disco NUL descarta toda la información enviada a él y solo se debe usar para las pruebas. Esto no es para uso de producción.
Importante
A partir de SQL Server 2012 (11.x) SP1 CU2 a SQL Server 2014 (12.x), solo puede realizar una copia de seguridad en un solo dispositivo al realizar una copia de seguridad en la dirección URL de Azure Blob Storage. Para realizar copias de seguridad en varios dispositivos al realizar copias de seguridad en la dirección URL, debe usar SQL Server 2016 (13.x) y versiones posteriores y debe usar tokens de firma de acceso compartido (SAS). Para obtener ejemplos de creación de una firma de acceso compartido, consulte SQL Server copia de seguridad en dirección URL para Azure Blob Storage y Simplificar la creación de credenciales de SQL con tokens de firma de acceso compartido (SAS) en Azure Storage con PowerShell.
Un dispositivo de disco no tiene que existir antes de especificarlo en una BACKUP instrucción . Si el dispositivo físico existe y la INIT opción no se especifica en la BACKUP instrucción , la copia de seguridad se anexa al dispositivo.
El dispositivo NUL descarta toda la entrada enviada a este archivo, pero la copia de seguridad sigue marcando todas las páginas como copia de seguridad.
Para obtener más información, consulte Backup Devices (SQL Server).
Nota:
La opción TAPE se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan.
n
Marcador de posición que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas.
MIRROR TO <backup_device> [ , ... n ]
Especifica un conjunto de hasta tres dispositivos de copia de seguridad secundarios, cada uno de los cuales refleja los dispositivos de copia de seguridad especificados en la TO cláusula . La MIRROR TO cláusula debe especificar el mismo tipo y número de dispositivos de copia de seguridad que la TO cláusula . El número máximo de MIRROR TO cláusulas es tres.
Esta opción solo está disponible en la edición Enterprise de SQL Server.
Nota:
Para MIRROR TO = DISK, BACKUP determina automáticamente el tamaño de bloque adecuado para los dispositivos de disco en función del tamaño de sector del disco. Si el MIRROR TO disco tiene un formato de sector diferente al especificado como dispositivo de copia de seguridad principal, se produce un error en el comando de copia de seguridad. Para reflejar las copias de seguridad en dispositivos que tienen diferentes tamaños de sector, se debe especificar el BLOCKSIZE parámetro y debe establecerse en el tamaño de sector más alto entre todos los dispositivos de destino. Para obtener más información sobre el tamaño del bloque, vea "BLOCKSIZE" más adelante en este artículo.
<backup_device>
Vea "<backup_device>", en un apartado anterior de esta sección.
n
Marcador de posición que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas. El número de dispositivos de la
MIRROR TOcláusula debe ser igual al número de dispositivos de laTOcláusula .Para obtener más información, consulte Familias de medios en conjuntos de medios reflejados más adelante en este artículo.
[ al lado del espejo ]
Marcador de posición que indica que una sola
BACKUPinstrucción puede contener hasta tresMIRROR TOcláusulas, además de la cláusula singleTO.
Opciones de WITH
Especifica las opciones que se van a utilizar con una operación de copia de seguridad.
CREDENTIAL
Aplica a: SQL Server.
Solo se usa al crear una copia de seguridad para Azure Blob Storage o almacenamiento de objetos compatible con S3.
INSTANTÁNEA_DE_ARCHIVO
Applies to: SQL Server 2016 (13.x) y versiones posteriores.
Se usa para crear una instantánea Azure de los archivos de base de datos cuando todos los archivos de base de datos de SQL Server se almacenan mediante el Azure Blob Storage. Para obtener más información, consulte SQL Server archivos de datos en Microsoft Azure. SQL Server Copia de seguridad de instantáneas toma Azure instantáneas de los archivos de base de datos (archivos de datos y de registro) en un estado coherente. Un conjunto coherente de Azure instantáneas componen una copia de seguridad y se registran en el archivo de copia de seguridad. La única diferencia entre BACKUP DATABASE TO URL WITH FILE_SNAPSHOT y BACKUP LOG TO URL WITH FILE_SNAPSHOT es que esta última también trunca el registro de transacciones mientras que la anterior no. Con SQL Server copia de seguridad de instantáneas, después de la copia de seguridad completa inicial requerida por SQL Server para establecer la cadena de copia de seguridad, solo se requiere una copia de seguridad del registro de transacciones para restaurar una base de datos al momento dado de la copia de seguridad del registro de transacciones. Además, solo se necesitan dos copias de seguridad del registro de transacciones para restaurar una base de datos a un momento en el tiempo dentro del intervalo entre ambas copias de seguridad del registro de transacciones.
DIFERENCIAL
Solo se usa con BACKUP DATABASE, especifica que la base de datos o copia de seguridad de archivos debe constar solo de las partes de la base de datos o archivo modificadas desde la última copia de seguridad completa. Una copia de seguridad diferencial suele ocupar menos espacio que una copia de seguridad completa. Use esta opción para que no sea necesario aplicar todas las copias de seguridad de registros individuales realizadas desde la última copia de seguridad completa.
Nota:
De forma predeterminada, BACKUP DATABASE crea una copia de seguridad completa.
Para obtener más información, consulte Copias de seguridad diferenciales (SQL Server).
ENCRIPTACIÓN
Se utiliza para especificar el cifrado para una copia de seguridad. Puede especificar un algoritmo de cifrado para cifrar la copia de seguridad o especificar NO_ENCRYPTION para no hacer que la copia de seguridad se cifre. El cifrado es una práctica recomendada para ayudar a proteger los archivos de copia de seguridad. La lista de algoritmos que puede especificar son:
AES_128AES_192AES_256TRIPLE_DES_3KEYNO_ENCRYPTION
Si decide cifrar, también tiene que especificar el cifrador mediante las opciones del cifrador:
-
SERVER CERTIFICATE= Encryptor_Name -
SERVER ASYMMETRIC KEY= Encryptor_Name
SERVER CERTIFICATE y SERVER ASYMMETRIC KEY son un certificado y una clave asimétrica creados en la base de datos master. Para más información, véase CREATE CERTIFICATE y CREATE ASYMMETRIC KEY respectivamente.
Advertencia
Cuando se usa el cifrado con el FILE_SNAPSHOT argumento , el propio archivo de metadatos se cifra mediante el algoritmo de cifrado especificado y el sistema comprueba que se completó el cifrado de datos transparente (TDE) para la base de datos. No se aplica más cifrado a los datos. Se produce un error en la copia de seguridad si la base de datos no se cifró o si el cifrado no se completó antes de que se emitiera la instrucción de copia de seguridad.
Opciones de conjunto de copia de seguridad
Estas opciones funcionan en el conjunto de copia de seguridad que se crea con esta operación de copia de seguridad.
Nota:
Para especificar un conjunto de copia de seguridad en una operación de restauración, use la opción FILE = <backup_set_file_number>. Para más información sobre cómo especificar un conjunto de respaldo, consulta "Especificando un conjunto de respaldo" en RESTORE Argumentos.
COPY_ONLY
Especifica que la copia de seguridad es una copia de seguridad de solo copia, que no afecta a la secuencia normal de copias de seguridad. Se crea una copia de seguridad de solo copia independientemente de las copias de seguridad convencionales programadas regularmente. Una copia de seguridad de solo copia no afecta a los procedimientos generales de copia de seguridad y restauración de la base de datos.
Las copias de seguridad de solo copia deben utilizarse en situaciones en las que se realiza una copia de seguridad con un fin específico, por ejemplo al hacer la copia de seguridad del registro antes de una restauración de archivos en línea. Normalmente, una copia de seguridad de solo copia se usa una vez y se elimina.
Cuando se usa con
BACKUP DATABASE, laCOPY_ONLYopción crea una copia de seguridad completa que no puede servir como base diferencial. El mapa de bits diferencial no se actualiza y las copias de seguridad diferenciales se comportan como si la copia de seguridad de solo copia no existe. Las copias de seguridad diferenciales posteriores usarán la copia de seguridad completa convencional más reciente como base.Importante
Si
DIFFERENTIALyCOPY_ONLYse usan juntas,COPY_ONLYse omite y se crea una copia de seguridad diferencial.Cuando se usa con
BACKUP LOG, laCOPY_ONLYopción crea una copia de seguridad de registros de solo copia, que no trunca el registro de transacciones. La copia de seguridad de registros de solo copia no tiene ningún efecto en la cadena de registros y otras copias de seguridad de registros se comportan como si la copia de seguridad de solo copia no existe.
Para más información, consulte Copias de seguridad de solo copia.
[ COMPRESIÓN [ ( ALGORITMO = { MS_XPRESS | ZSTD | accelerator_algorithm } [ , LEVEL = { LOW | MEDIUM | ALTO } ] ) ] | NO_COMPRESSION ]
Especifica si la compresión de copia de seguridad se realiza en esta copia de seguridad, lo que invalida la configuración predeterminada del servidor.
Durante la instalación, el comportamiento predeterminado es que no se realice la compresión de copia de seguridad. Este valor predeterminado se puede cambiar estableciendo la opción valor predeterminado de compresión de copia de seguridad de la configuración del servidor. Para obtener información sobre cómo ver el valor actual de esta opción, vea View o cambiar las propiedades del servidor (SQL Server).
Para obtener información sobre el uso de la compresión de copia de seguridad con bases de datos habilitadas para cifrado de datos transparente (TDE), consulte la sección Comentarios.
El algoritmo de compresión ZSTD está disponible a partir de SQL Server 2025 (17.x).
COMPRESIÓN
Habilita de forma explícita la compresión de copia de seguridad.
NO_COMPRESSION
Deshabilita de forma explícita la compresión de copia de seguridad.
NIVEL
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
Este es un parámetro opcional que especifica el nivel de compresión. Afecta a
ALGORITHM = MS_EXPRESSy, a partir de SQL Server 2025 (17.x),ALGORITHM = ZSTD.Los valores aceptables son:
-
LOW(valor predeterminado) MEDIUMHIGH
-
ALGORITMO
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
ZSTDyMS_EXPRESSson algoritmos de nivel de software.QAT_DEFLATEes un algoritmo basado en hardware que requiere tecnología Intel® QuickAssist (QAT) para SQL Server. El valor predeterminado esMS_XPRESS.Para usar el algoritmo de compresión ZSTD introducido en SQL Server 2025 (17.x):
BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL = MEDIUM)Si ha configurado la aceleración integrada y la descarga, puede usar un acelerador proporcionado por la solución. Por ejemplo, si ha configurado Configurar la aceleración integrada y la descarga, en el ejemplo siguiente se completa la copia de seguridad con la solución de aceleración, con la biblioteca QATzip mediante
QZ_DEFLATEcon el nivel de compresión 1.BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION (ALGORITHM = QAT_DEFLATE)Comportamientos de ejemplo:
Instrucción backup Resultado BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH NO_COMPRESSIONCopia de seguridad sin compresión BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSIONCopia de seguridad con compresión mediante el algoritmo especificado por la opción backup compression algorithmde servidor (valor predeterminadoMS_XPRESS)BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = MS_XPRESS)Copia de seguridad con compresión mediante MS_XPRESSalgoritmoBACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = ZSTD)Copia de seguridad con compresión mediante el algoritmo ZSTD. BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL = HIGH)Copia de seguridad con compresión mediante el algoritmo ZSTD con el nivel HIGHde compresión .
DESCRIPCIÓN = { 'texto' | @text_variable }
Especifica el texto de forma libre que describe el conjunto de copia de seguridad. La cadena puede tener un máximo de 255 caracteres.
NOMBRE = { backup_set_name | @backup_set_var }
Especifica el nombre del conjunto de copia de seguridad. Los nombres pueden tener un máximo de 128 caracteres. Si NAME no se especifica, está en blanco.
{ FECHA de CADUCIDAD = 'fecha' | RETENCIONES = días }
Especifica cuándo se puede sobrescribir el conjunto de copia de seguridad para esta copia de seguridad. Si se usan estas opciones, RETAINDAYS tiene prioridad sobre EXPIREDATE.
Si no se especifica ninguna opción, la fecha de expiración se determina con el valor de configuración media retention. Para obtener más información, vea Opciones de configuración de servidor.
Importante
Estas opciones solo impiden que SQL Server sobrescriba un archivo. Las cintas se pueden borrar utilizando otros métodos, y los archivos de disco se pueden eliminar usando el sistema operativo. Para obtener más información sobre la comprobación de expiración, vea SKIP y FORMAT en este artículo.
EXPIREDATE= { 'fecha' | @date_var }Especifica cuándo expira el conjunto de copia de seguridad y se puede sobrescribir. Si se proporciona como una variable (@date_var), esta fecha debe seguir el formato datetime del sistema configurado y especificarse como uno de los siguientes:
- Constante de cadena (@date_var = fecha)
- Variable de un tipo de datos de cadena de caracteres (excepto los tipos de datos ntext o text)
- Un smalldatetime
- Una variable datetime
Por ejemplo:
'Dec 31, 2020 11:59 PM''1/1/2021'
Para obtener información sobre cómo especificar valores datetime , vea Tipos de fecha y hora.
Nota:
Para omitir la fecha de caducidad, use la opción
SKIP.RETAINDAYS= { días | @days_var }Especifica el número de días que deben transcurrir antes de que se pueda sobrescribir este conjunto de medios de copia de seguridad. Si se proporciona como una variable (@days_var), debe especificarse como un entero.
{ METADATA_ONLY | INSTANTÁNEA }
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
METADATA_ONLY y SNAPSHOT son sinónimos.
Opciones del conjunto de medios
Estas opciones funcionan para todo el conjunto de medios.
{ NADA | INIT }
Controla si la operación de copia de seguridad anexa o sobrescribe los conjuntos de copias de seguridad existentes en el medio. El valor predeterminado es anexar al conjunto de copia de seguridad más reciente en el medio (NOINIT).
Nota:
Para obtener información sobre las interacciones entre { NOINIT | INIT } y { NOSKIP | SKIP }, vea Comentarios más adelante en este artículo.
NOINIT
Indica que el conjunto de copia de seguridad se anexa al conjunto de medios especificado, conservando así los conjuntos de copia de seguridad existentes. Si se ha definido una contraseña para el conjunto de medios, debe proporcionarla.
NOINITes el valor predeterminado.Para obtener más información, consulte Media sets, media families y backup sets (SQL Server).
INIT
Especifica que se deben sobrescribir todos los conjuntos de copia de seguridad, pero conserva el encabezado de medios. Si
INITse especifica, se sobrescribe cualquier conjunto de copia de seguridad existente en ese dispositivo, si las condiciones lo permiten. De forma predeterminada,BACKUPcomprueba las siguientes condiciones y no sobrescribe el medio de copia de seguridad si existe alguna condición:- Los conjuntos de copia de seguridad aún no han expirado. Para más información, vea las opciones
EXPIREDATEyRETAINDAYS. - El nombre del conjunto de copia de seguridad proporcionado en la
BACKUPinstrucción , si se proporciona, no coincide con el nombre en el medio de copia de seguridad. Para obtener más información, consulte laNAMEopción , anteriormente en esta sección.
Para invalidar estas comprobaciones, use la opción
SKIP.Para obtener más información, consulte Media sets, media families y backup sets (SQL Server).
- Los conjuntos de copia de seguridad aún no han expirado. Para más información, vea las opciones
{ NOSKIP | PASAR }
Controla si una operación de copia de seguridad comprueba la fecha y la hora de expiración de los conjuntos de copia de seguridad en el medio antes de sobrescribirlos.
Nota:
Para obtener información sobre las interacciones entre { NOINIT | INIT } y { NOSKIP | SKIP }, vea Comentarios más adelante en este artículo.
NOSKIP
Indica a la
BACKUPinstrucción que compruebe la fecha de expiración de todos los conjuntos de copia de seguridad en el medio antes de permitirles sobrescribirlos. Este es el comportamiento predeterminado.SALTARSE
Deshabilita la comprobación de la expiración y el nombre del conjunto de copia de seguridad que normalmente realiza la
BACKUPinstrucción para evitar sobrescrituras de conjuntos de copia de seguridad. Para obtener información sobre las interacciones entre {INIT|NOINIT} y {NOSKIP|SKIP}, vea Comentarios más adelante en este artículo.Para ver las fechas de expiración de los conjuntos de copia de seguridad, consulte la
expiration_datecolumna de la tabla del historial del conjunto de copias de seguridad .
{ NOFORMAT | FORMATO }
Especifica si debe escribirse el encabezado de medios en los volúmenes usados en esta operación de copia de seguridad, con lo que se sobrescribirán los conjuntos de copias de seguridad y el encabezado de medios existentes.
NOFORMAT
Especifica que la operación de copia de seguridad conservará los conjuntos de copias de seguridad y el encabezado de medios existentes en los volúmenes de medios usados en esta operación de copia de seguridad. Este es el comportamiento predeterminado.
FORMATO
Especifica que se debe crear un conjunto de medios nuevo. FORMAT hace que la operación de copia de seguridad escriba un nuevo encabezado de medios en todos los volúmenes de medios usados en la operación de copia de seguridad. El contenido existente del volumen no será válido porque se sobrescribirán los conjuntos de copias de seguridad y el encabezado de medios existentes.
Importante
Use
FORMATcon cuidado. Al dar formato a cualquier volumen de un conjunto de medios, todo el conjunto de medios se convierte en inutilizable. Por ejemplo, si inicializa una cinta que pertenece a un conjunto de medios distribuido, queda inutilizable todo el conjunto de medios.Especificar FORMAT implica
SKIP;SKIPno es necesario indicar explícitamente.
MEDIADESCRIPTION = { texto | @text_variable }
Especifica la descripción de texto de forma libre, con un máximo de 255 caracteres, del conjunto de medios.
MEDIANAME = { media_name | @media_name_variable }
Especifica el nombre del medio para el conjunto completo de medios de copia de seguridad. El nombre del medio no puede tener más de 128 caracteres. Si se especifica MEDIANAME, debe coincidir con el nombre de medio especificado que ya existe en los volúmenes de copia de seguridad. Si no se especifica o si se especifica la SKIP opción, no hay ninguna comprobación del nombre del medio.
TAMAÑO BLOQUE = { tamaño | de bloque@blocksize_variable }
Especifica el tamaño de bloque físico, en bytes. Los tamaños admitidos son 512, 1024, 2048, 4096, 8192, 16384, 32768 y 65536 (64 KB) bytes. El valor predeterminado es 65536 para dispositivos de cinta y 512 para otros dispositivos. Normalmente, esta opción no es necesaria porque BACKUP selecciona automáticamente un tamaño de bloque adecuado para el dispositivo. La especificación explícita de un tamaño de bloque invalida la selección automática del tamaño de bloque.
Si va a realizar una copia de seguridad en la que planea copiar y restaurar desde una CD-ROM, especifique BLOCKSIZE = 2048.
Nota:
Normalmente, esta opción solo afecta al rendimiento al escribir en dispositivos de cinta.
Opciones de transferencia de datos
BUFFERCOUNT = { buffercount | @buffercount_variable }
Especifica el número total de búferes de E/S que se van a utilizar para la operación de copia de seguridad. Puede especificar cualquier entero positivo; no obstante, un número de búferes demasiado grande podría provocar errores de "memoria insuficiente" a causa de un espacio de direcciones virtuales inadecuado en el proceso Sqlservr.exe.
El espacio total usado por los búferes está determinado por: BUFFERCOUNT * MAXTRANSFERSIZE.
Aumentar BUFFERCOUNT puede reducir significativamente el tiempo de copia de seguridad a costa de un mayor uso de memoria.
Nota:
Para obtener información importante sobre cómo usar la opción BUFFERCOUNT, vea el blog Incorrect BufferCount data transfer option can lead to OOM condition (Una opción de transferencia de datos BufferCount incorrecta puede agotar la memoria).
MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
Especifica la unidad de transferencia más grande en bytes que se va a usar entre SQL Server y los medios de copia de seguridad. Los valores posibles son múltiplos de 65536 bytes (64 KB) que van hasta 4.194.304 bytes (4 MB). En un caso específico de copia de seguridad en dirección URL al almacenamiento de objetos compatible con S3, MAXTRANSFERSIZE es de 10 MB. Para obtener más información, vea Comentarios.
Al crear copias de seguridad mediante el servicio de escritura de SQL, si la base de datos ha configurado FILESTREAM (SQL Server) o incluye grupos de archivos optimizados para memoria, a continuación, el MAXTRANSFERSIZE en el momento de una restauración debe ser mayor o igual que el MAXTRANSFERSIZE que se usó cuando se creó la copia de seguridad.
| Command | SQL Server 2022 y versiones posteriores |
|---|---|
| BACKUPURL TO - Azure | Valor predeterminado de 1 MB, máximo de 20 MB |
| BACKUP TO URL - S3 | Valor predeterminado de 10 MB, máximo de 20 MB |
| BACKUP AL DISCO | El valor predeterminado es 1 MB, 4 MB como máximo |
| BACKUP A LA CINTA/VDI | Valor predeterminado de 64 KB, máximo de 4 MB |
Para las bases de datos habilitadas para el cifrado de datos transparente (TDE) con un único archivo de datos, el valor predeterminado MAXTRANSFERSIZE es 65536 (64 KB). En el caso de las bases de datos cifradas que no son TDE, el valor predeterminado MAXTRANSFERSIZE es 1048576 (1 MB) al usar la copia de seguridad DISKen y 65536 (64 KB) al usar VDI o TAPE. Para más información sobre cómo usar la compresión de copia de seguridad con bases de datos con Cifrado de datos transparente (TDE), vea la sección Comentarios.
Opciones de administración de errores
Estas opciones permiten determinar si se habilitarán las sumas de comprobación de copia de seguridad para la operación de copia de seguridad y si ésta se detiene al encontrar un error.
{ NO_CHECKSUM | SUMA DE VERIFICACIÓN }
Controla si las sumas de comprobación de copia de seguridad están habilitadas.
NO_CHECKSUM
Deshabilita de forma explícita la generación de sumas de comprobación de copia de seguridad (y la validación de sumas de comprobación de página). Este es el comportamiento predeterminado.
CHECKSUM
Especifica que la operación de copia de seguridad comprueba en cada página si hay suma de comprobación y página rasgada (si está habilitada y disponible) y generará una suma de comprobación para toda la copia de seguridad.
El uso de sumas de comprobación de copia de seguridad puede afectar al rendimiento de la carga de trabajo y de copia de seguridad.
Para obtener más información, vea Errores de medios no accesibles durante la copia de seguridad y restauración (SQL Server).
{ STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
Controla si una operación de copia de seguridad se detiene o continúa después de encontrar un error en la suma de comprobación de página.
STOP_ON_ERROR
Indica
BACKUPque se produzca un error si no se comprueba una suma de comprobación de página. Este es el comportamiento predeterminado.CONTINUAR_DESPUÉS_DEL_ERROR
BACKUPIndica que continúe a pesar de encontrar errores como sumas de comprobación no válidas o páginas rasgadas.
Si no puede realizar una copia de seguridad del final del registro mediante la NO_TRUNCATE opción cuando la base de datos está dañada, puede intentar realizar una copia de seguridad del registro final especificando CONTINUE_AFTER_ERROR en lugar de .NO_TRUNCATE
Para obtener más información, vea Errores de medios no accesibles durante la copia de seguridad y restauración (SQL Server).
Opciones de compatibilidad
REANUDAR
No surte ningún efecto. Esta opción la acepta la versión para que sea compatible con SQL Server 2005 Analysis Services (SSAS).
Opciones de supervisión
ESTADÍSTICAS [ = porcentaje ]
Muestra un mensaje cada vez que se completa otro percentage; se usa para indicar el progreso. Si se omite percentage, SQL Server muestra un mensaje después de que se complete cada 10 %.
La STATS opción informa del porcentaje completado a partir del umbral para notificar el siguiente intervalo. Esto es aproximadamente el porcentaje especificado; por ejemplo, con STATS = 10, si la cantidad completada es del 40 por ciento, la opción podría mostrar el 43 por ciento. En el caso de los conjuntos de copia de seguridad grandes, esto no es un problema, ya que el porcentaje completado se mueve muy lentamente entre las llamadas de E/S completadas.
Opciones de cinta
Estas opciones solo se usan para TAPE dispositivos. Se omitirán si se utiliza otro tipo de dispositivo.
{ REBOBINAR | NOREWIND }
REBOBINAR
Especifica que SQL Server libera y rebobina la cinta.
REWINDes el valor predeterminado.NOREWIND
Especifica que SQL Server mantiene abierta la cinta después de la operación de copia de seguridad. Puede utilizar esta opción como ayuda para mejorar el rendimiento al realizar varias operaciones de copia de seguridad en una cinta.
NOREWINDimplicaNOUNLOAD, y estas opciones no son compatibles dentro de una solaBACKUPinstrucción.Nota:
Si usa
NOREWIND, la instancia de SQL Server conserva la propiedad de la unidad de cinta hasta que una instrucción />BACKUPoRESTOREque se ejecuta en el mismo proceso usa laREWINDoUNLOADopción o la instancia del servidor se apaga. Mantener abierta la cinta evita que otros procesos obtengan acceso a la misma. Para obtener información sobre cómo mostrar una lista de cintas abiertas y cerrar una cinta abierta, vea Backup Devices (SQL Server).
{ DESCARGAR | DESCARGA }
Nota:
UNLOAD y NOUNLOAD son configuraciones de sesión que se conservan durante la vida útil de la sesión o hasta que se restablezca especificando la alternativa.
DESCARGAR
Especifica que la cinta se rebobina y descarga automáticamente al terminar la copia de seguridad.
UNLOADes el valor predeterminado cuando comienza una sesión.NOUNLOAD
Especifica que después de la
BACKUPoperación, la cinta permanece cargada en la unidad de cinta.
Nota:
En una copia de seguridad de un dispositivo de cinta, la opción BLOCKSIZE afecta al rendimiento de la operación de copia de seguridad. Normalmente, esta opción solo afecta al rendimiento al escribir en dispositivos de cinta.
Opciones específicas del registro
Estas opciones solo se usan con BACKUP LOG.
Nota:
Si no desea realizar copias de seguridad de registros, use el modelo de recuperación simple. Para obtener más información, consulte modelos Recovery (SQL Server).
{ NO RECUPERA | ESPERA = undo_file_name }
NORECOVERY
Realiza una copia de seguridad del registro después del error y deja la base de datos en el estado RESTORING.
NORECOVERYresulta útil al conmutar por error a una base de datos secundaria o al guardar la cola del registro antes de unaRESTOREoperación.Para hacer una copia de seguridad del registro óptima que omita el truncamiento de los registros y, después, establecer la base de datos en el estado RESTORING de forma atómica, use las opciones
NO_TRUNCATEyNORECOVERYconjuntamente.ESPERA = standby_file_name
Realiza una copia de seguridad del final del registro y deja la base de datos en un estado y
STANDBYde solo lectura. LaSTANDBYcláusula escribe datos en espera (realizando reversión, pero con la opción de restauraciones adicionales). El uso de laSTANDBYopción es equivalente aBACKUP LOG WITH NORECOVERYseguido de .RESTORE WITH STANDBYEl uso del modo de espera requiere un archivo en espera especificado mediante standby_file_name, cuya ubicación se almacena en el registro de la base de datos. Si el archivo especificado ya existe, el Motor de base de datos lo sobrescribe; si el archivo no existe, el Motor de base de datos lo crea. El archivo en espera pasa a formar parte de la base de datos.
Este archivo contiene los cambios revertidos, que se deben invertir si
RESTORE LOGlas operaciones se van a aplicar posteriormente. Debe haber suficiente espacio en disco para permitir el crecimiento del archivo en espera de manera que pueda contener todas las páginas distintas de la base de datos que se modificaron al revertir las transacciones sin confirmar.
NO_TRUNCATE
Especifica que el registro de transacciones no debe truncarse y hace que el Motor de base de datos intente realizar la copia de seguridad independientemente del estado de la base de datos. Por lo tanto, una copia de seguridad realizada con NO_TRUNCATE podría tener metadatos incompletos. Esta opción permite realizar copias de seguridad del registro de transacciones cuando la base de datos está dañada.
La NO_TRUNCATE opción de BACKUP LOG es equivalente a especificar y COPY_ONLYCONTINUE_AFTER_ERROR.
Sin la NO_TRUNCATE opción , la base de datos debe estar en estado ONLINE . Si la base de datos está en el estado SUSPENDED, podría poder crear una copia de seguridad especificando NO_TRUNCATE. Pero si la base de datos está en el OFFLINE estado o EMERGENCY , BACKUP no se permite incluso con NO_TRUNCATE. Para obtener información sobre los estados de la base de datos, consulte Estados de base de datos.
Acerca de cómo trabajar con copias de seguridad de SQL Server
En esta sección se presentan los siguiente conceptos esenciales de la copia de seguridad:
Nota:
Para obtener una introducción a la copia de seguridad en SQL Server, consulte Backup overview (SQL Server).
Tipos de copia de seguridad
Los tipos de copia de seguridad admitidos dependen del modelo de recuperación de la base de datos y son los siguientes:
Todos los modelos de recuperación admiten copias de seguridad de datos completas y diferenciales.
Ámbito de la copia de seguridad Tipos de copia de seguridad Base de datos completa Las copias de seguridad de bases de datos abarcan toda la base de datos.
Opcionalmente, cada copia de seguridad de base de datos puede servir como la base de una serie de una o más copias de seguridad de base de datos diferenciales.Base de datos parcial Las copias de seguridad parciales abarcan grupos de archivos de lectura o escritura y, posiblemente, uno o varios grupos de archivos o archivos de solo lectura.
Opcionalmente, cada copia de seguridad parcial puede servir como la base de una serie de una o más copias de seguridad parciales diferenciales.Archivo o grupo de archivos Las copias de seguridad de archivos abarcan uno o varios archivos o grupos de archivos, y solo son relevantes para las bases de datos que contengan varios grupos de archivos. En el modelo de recuperación simple, las copias de seguridad de archivos se limitan básicamente a los archivos secundarios de solo lectura.
Opcionalmente, cada copia de seguridad de archivos puede servir como la base de una serie de una o más copias de seguridad de archivos diferenciales.En el modelo de recuperación completa o el modelo de recuperación optimizado para cargas masivas de registros, las copias de seguridad convencionales también incluyen copias de seguridad de registros de transacciones secuenciales (o copias de seguridad de registros), las que sean necesarias. Cada copia de seguridad del registro cubre la parte del registro de transacciones que estaba activa al crear la copia de seguridad e incluye todos los registros que no se copiaron en una copia de seguridad del registro anterior.
Para reducir lo máximo posible el riesgo de perder trabajo, lo que supondría una sobrecarga de trabajo administrativo, debería programar copias de seguridad del registro frecuentes. La programación de copias de seguridad diferenciales entre copias de seguridad completas puede reducir el tiempo de restauración al disminuir el número de copias de seguridad del registro que se deben restaurar después de restaurar los datos.
Recomendamos que coloque las copias de seguridad del registro en un volumen que no sea el de las copias de seguridad de la base de datos.
Nota:
Para poder crear la primera copia de seguridad de registros, debe crear una copia de seguridad completa.
La copia de seguridad de solo copia es una copia de seguridad completa o de registros especial independiente de la secuencia normal de las copias de seguridad convencionales. Para crear una copia de seguridad de solo copia, especifique la opción en
COPY_ONLYlaBACKUPinstrucción . Para más información, consulte Copias de seguridad de solo copia.
Truncamiento del registro de transacciones
Para evitar llenar el registro de transacciones de una base de datos, las copias de seguridad rutinarias son esenciales. Normalmente, el truncamiento se produce automáticamente bajo el modelo de recuperación simple cuando se realiza una copia de seguridad de la base de datos y bajo el modelo de recuperación completa cuando se realiza una copia de seguridad del registro de transacciones. Sin embargo, en ocasiones se puede retrasar el proceso de truncamiento. Para obtener información sobre los factores que pueden retrasar el truncamiento del registro, vea El registro de transacciones.
Nota:
Las opciones BACKUP LOG WITH NO_LOG y WITH TRUNCATE_ONLY se han descontinuado. Si usa la recuperación completa o masiva del modelo de recuperación registrado de forma masiva y debe quitar la cadena de copia de seguridad de registros de una base de datos, cambie al modelo de recuperación simple. Para obtener más información, consulte View o cambie el modelo de recuperación de una base de datos (SQL Server).
Formato de medios de copia de seguridad
Un medio de copia de seguridad tiene el formato de una BACKUP instrucción si y solo si alguno de los siguientes elementos es true:
- Se especifica la opción
FORMAT. - El medio está vacío.
- En la operación se está escribiendo una cinta de continuación.
Trabajar con dispositivos de copia de seguridad y conjuntos de medios
Dispositivos de copia de seguridad en un conjunto de medios seccionado (conjunto seccionado)
Un conjunto seccionado es un conjunto de archivos de disco en el que los datos se dividen en bloques y se distribuyen en un orden fijo. El número de dispositivos de copia de seguridad usados en un conjunto de franjas debe ser siempre el mismo (a menos que el medio se reinicialice con FORMAT).
En el siguiente ejemplo se escribe una copia de seguridad de la base de datos AdventureWorks2025 en un nuevo conjunto de medios distribuido que utiliza tres archivos de disco.
BACKUP DATABASE AdventureWorks2022
TO DISK = 'X:\SQLServerBackups\AdventureWorks1.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3.bak'
WITH FORMAT,
MEDIANAME = 'AdventureWorksStripedSet0',
MEDIADESCRIPTION = 'Striped media set for AdventureWorks2022 database';
GO
Después de definir un dispositivo de copia de seguridad como parte de un conjunto de franjas, no se puede usar para una copia de seguridad de un solo dispositivo a menos que se especifique FORMAT. Del mismo modo, un dispositivo de copia de seguridad que contiene copias de seguridad no destripadas no se puede usar en un conjunto de franjas a menos que se especifique FORMAT. Para dividir un conjunto de copia de seguridad distribuido, utilice FORMAT.
Si no se especifican o MEDIANAMEMEDIADESCRIPTION cuando se escribe un encabezado multimedia, el campo de encabezado multimedia correspondiente al elemento en blanco está vacío.
Trabajar con un conjunto de medios reflejado
Normalmente, las copias de seguridad no sonmirradas y BACKUP las instrucciones simplemente incluyen una TO cláusula . No obstante, puede haber hasta cuatro reflejos en total por cada conjunto de medios. En un conjunto de medios reflejado, la operación copia de seguridad escribe en varios grupos de dispositivos de copia de seguridad. Cada grupo de dispositivos de copia de seguridad contiene un único reflejo en el conjunto de medios reflejado. Cada reflejo debe usar la misma cantidad y tipo de dispositivos de copia de seguridad físicos, y todos deben tener las mismas propiedades.
Para hacer una copia de seguridad de un conjunto de medios reflejado, deben estar presentes todos los reflejos. Para realizar una copia de seguridad en un conjunto de medios reflejado, especifique la cláusula TO para indicar el primer reflejo y la cláusula MIRROR TO para cada reflejo adicional.
Para un conjunto de medios reflejado, cada MIRROR TO cláusula debe enumerar el mismo número y tipo de dispositivos que la TO cláusula . En el siguiente ejemplo se escribe en un conjunto de medios reflejado que contiene dos reflejos y usa tres dispositivos por reflejo:
BACKUP DATABASE AdventureWorks2022
TO DISK = 'X:\SQLServerBackups\AdventureWorks1a.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2a.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3a.bak'
MIRROR TO DISK = 'X:\SQLServerBackups\AdventureWorks1b.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2b.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3b.bak';
GO
Importante
Este ejemplo se ha creado de modo que pueda probarlo en su sistema local. En la práctica, realizar una copia de seguridad en varios dispositivos de la misma unidad afectaría el rendimiento y eliminaría la redundancia para la que se diseñaron los conjuntos de medios reflejados.
Familias de medios en conjuntos de medios reflejados
Cada dispositivo de copia de seguridad especificado en la TO cláusula de una BACKUP instrucción corresponde a una familia de medios. Por ejemplo, si la TO cláusula enumera tres dispositivos, BACKUP escribe datos en tres familias de medios. En un conjunto de medios reflejado, cada reflejo debe contener una copia de cada familia de medios. Esto se debe a que el número de dispositivos debe ser idéntico en cada reflejo.
Si se incluyen varios dispositivos para cada reflejo, el orden determina qué familia de medios se escribe en cada dispositivo. Por ejemplo, en cada lista de dispositivos, el segundo dispositivo corresponde a la segunda familia de medios. Para los dispositivos del ejemplo anterior, la correspondencia entre dispositivos y familias de medios se muestra en la tabla siguiente.
| Reflejo | Familia de medios 1 | Familia de medios 2 | Familia de medios 3 |
|---|---|---|---|
| 0 | Z:\AdventureWorks1a.bak |
Z:\AdventureWorks2a.bak |
Z:\AdventureWorks3a.bak |
| 1 | Z:\AdventureWorks1b.bak |
Z:\AdventureWorks2b.bak |
Z:\AdventureWorks3b.bak |
Siempre debe realizarse la copia de seguridad de una familia de medios en el mismo dispositivo dentro de un reflejo específico. Por tanto, cada vez que use un conjunto de medios existente, enumere los dispositivos de cada reflejo en el mismo orden que se especificaron al crear el conjunto de medios.
Para obtener más información sobre los conjuntos de medios reflejados, consulte Mirrored Backup Media Sets (SQL Server). Para obtener más información sobre los conjuntos de medios y las familias de medios en general, consulte Media sets, familias de medios y conjuntos de copia de seguridad (SQL Server).
Restauración de copias de seguridad de SQL Server
Para restaurar una base de datos y, opcionalmente, recuperarla para ponerla en línea, o para restaurar un archivo o grupo de archivos, utiliza la instrucción Transact-SQL RESTORE o las tareas SQL Server Management Studio Restauración. Para obtener más información, consulte Restore and recovery overview (SQL Server).
Consideraciones adicionales sobre BACKUP las opciones
Interacción de SKIP, NOSKIP, INIT y NOINIT
En esta tabla se describen las interacciones entre las opciones { NOINIT | INIT } y { NOSKIP | SKIP } .
Nota:
Si el medio de cinta está vacío o el archivo de copia de seguridad del disco no existe, todas estas interacciones escriben un encabezado multimedia y continúan. Si el medio no está vacío y carece de un encabezado multimedia válido, estas operaciones proporcionan comentarios que indican que no es un medio MTF válido y finalizan la operación de copia de seguridad.
| Opción de omitir | NOINIT |
INIT |
|---|---|---|
NOSKIP |
Si el volumen contiene un encabezado de medios válido, se comprueba que el nombre del medio coincida con la opción MEDIANAME, si se ha proporcionado. Si coincide, se anexa el conjunto de copia de seguridad y se mantienen todos los conjuntos de copia de seguridad existentes.Si el volumen no contiene un encabezado multimedia válido, se produce un error. |
Si el volumen contiene un encabezado de medios válido, se realizan las siguientes comprobaciones:
Si las comprobaciones son correctas, se sobrescriben los conjuntos de copia de seguridad de los medios y solo se mantiene el encabezado de medios. Si el volumen no contiene un encabezado multimedia válido, genera uno con especificado MEDIANAME y MEDIADESCRIPTION, si existe. |
SKIP |
Si el volumen contiene un encabezado de medios válido, se anexa el conjunto de copia de seguridad, conservándose todos los conjuntos de copia de seguridad existentes. | Si el volumen contiene un encabezado multimedia válido 2 , sobrescribe los conjuntos de copia de seguridad de los medios, conservando solo el encabezado multimedia. Si el medio está vacío, se genera un encabezado de medios usando las opciones MEDIANAME y MEDIADESCRIPTION, si se especificó alguna. |
1 El usuario debe pertenecer a los roles fijos de servidor o de base de datos apropiados para realizar una operación de copia de seguridad.
2 La validez incluye el número de versión de MTF y otra información acerca del encabezado. Si la versión especificada no se admite o se trata de un valor no esperado, se produce un error.
Compatibilidad
Precaución
Las copias de seguridad creadas por una versión más reciente de SQL Server no se pueden restaurar en versiones anteriores de SQL Server.
BACKUP admite la opción RESTART para proporcionar compatibilidad con versiones anteriores de SQL Server. Pero RESTART no tiene ningún efecto.
Comentarios
Se pueden anexar copias de seguridad de la base de datos o de registros a cualquier dispositivo de disco o cinta, lo que permite mantener la base de datos y sus registros de transacciones en la misma ubicación física.
La BACKUP instrucción no se permite en una transacción explícita o implícita.
No se puede realizar una copia de seguridad de una base de datos en los siguientes estados:
- Restaurar
- En espera
- Solo lectura
Se pueden realizar operaciones de copia de seguridad entre plataformas, incluso entre diferentes tipos de procesador, siempre que el sistema operativo admita la intercalación de la base de datos.
A partir de SQL Server 2016 (13.x), establecer MAXTRANSFERSIZElarger que 65536 (64 KB) habilita un algoritmo de compresión optimizado para Cifrado de datostransparent (TDE) bases de datos cifradas que descifran primero una página, lo comprime y, a continuación, lo cifra de nuevo. Si MAXTRANSFERSIZE no se especifica o si MAXTRANSFERSIZE = 65536 se usa (64 KB), la compresión de copia de seguridad con bases de datos cifradas de TDE comprime directamente las páginas cifradas y podría no producir buenas relaciones de compresión. Para más información, vea Backup Compression for TDE-enabled Databases (Compresión de copia de seguridad en bases de datos con TDE habilitado).
A partir de SQL Server 2019 (15.x) CU5, ya no es necesario establecer MAXTRANSFERSIZE para habilitar este algoritmo de compresión optimizado con TDE. Si se especifica WITH COMPRESSION el comando de copia de seguridad o la configuración predeterminada del servidor de compresión de copia de seguridad se establece en 1, MAXTRANSFERSIZE se aumenta automáticamente a 128 K para habilitar el algoritmo optimizado. Si MAXTRANSFERSIZE se especifica en el comando de copia de seguridad con un valor > 64 K, se respeta el valor proporcionado. En otras palabras, SQL Server nunca disminuye automáticamente el valor, solo lo aumenta. Si necesita hacer una copia de seguridad de una base de datos con cifrado TDE con MAXTRANSFERSIZE = 65536, debe especificar WITH NO_COMPRESSION o asegurarse de que la configuración de servidor predeterminada de compresión de copia de seguridad esté establecida en 0.
Nota:
Hay algunos casos en los que el MAXTRANSFERSIZE predeterminado es mayor que 64 KB:
- Cuando la base de datos tiene varios archivos de datos creados, usa
MAXTRANSFERSIZE> 64 KB. - Al realizar la copia de seguridad en la dirección URL en Azure Blob Storage, el valor predeterminado
MAXTRANSFERSIZE = 1048576(1 MB). - Al realizar la copia de seguridad en la dirección URL al almacenamiento de objetos compatible con S3, el valor predeterminado
MAXTRANSFERSIZE = 10485760(10 MB).
Incluso si se aplica una de estas condiciones, debe establecer explícitamente MAXTRANSFERSIZE mayor que 64K en el comando de copia de seguridad para obtener el algoritmo de compresión de copia de seguridad optimizada, a menos que esté en SQL Server 2019 (15.x) CU5 o posterior.
De forma predeterminada, cada operación de copia de seguridad correcta agrega una entrada en el registro de errores SQL Server y en el registro de eventos del sistema. Si se hace una copia de seguridad del registro de transacciones con frecuencia, estos mensajes que indican la corrección de la operación pueden acumularse rápidamente, con lo que se crean registros de errores grandes que pueden dificultar la búsqueda de otros mensajes. En esos casos, puede suprimir estas entradas de registro usando la marca de seguimiento 3226 si ninguna automatización o supervisión depende de esas entradas. Para obtener más información, consulte Establecimiento de marcas de seguimiento con DBCC TRACEON.
Interoperabilidad
SQL Server usa un proceso de copia de seguridad en línea para permitir una copia de seguridad de la base de datos mientras la base de datos todavía está en uso. Durante una copia de seguridad, la mayoría de las operaciones son posibles; Por ejemplo, se INSERTpermiten instrucciones , UPDATEo DELETE durante una operación de copia de seguridad.
Las operaciones que no se pueden ejecutar durante una base de datos o una copia de seguridad del registro de transacciones incluyen:
Operaciones de administración de archivos, como la instrucción
ALTER DATABASEcon las opcionesADD FILEoREMOVE FILE.Operaciones de reducción de la base de datos o de reducción de un archivo. Esto incluye las operaciones de reducción automática.
Si una operación de copia de seguridad se superpone con una operación o DBCC SHRINK administración de archivos, surge un conflicto. Independientemente de cuál de las operaciones en conflicto se inicie en primer lugar, la segunda operación espera el bloqueo establecido por la primera operación para agotar el tiempo de espera (el período de tiempo de espera se controla mediante una configuración de tiempo de espera de sesión). Si el bloqueo se libera durante el período de tiempo de espera, la segunda operación continúa. Si se agota el tiempo de espera del bloqueo, la segunda operación no se realiza correctamente.
Metadatos
SQL Server incluye las siguientes tablas del historial de copia de seguridad que realizan un seguimiento de la actividad de copia de seguridad:
Cuando se realiza una restauración, si el conjunto de copia de seguridad aún no se registró en la msdb base de datos, es posible que se modifiquen las tablas del historial de copia de seguridad.
Seguridad
A partir de SQL Server 2012 (11.x), las opciones de PASSWORD y MEDIAPASSWORD se descontinuan para crear copias de seguridad. Todavía es posible restaurar las copias de seguridad creadas con contraseñas.
Permisos
De forma predeterminada, los permisos BACKUP DATABASE y BACKUP LOG se corresponden a los miembros del rol fijo de servidor sysadmin y de los roles fijos de base de datos db_owner y db_backupoperator.
Los problemas de propiedad y permisos del archivo físico del dispositivo de copia de seguridad pueden interferir con una operación de copia de seguridad. Asegúrese de que SQL Server cuenta de inicio debe tener permisos de lectura y escritura en el dispositivo de copia de seguridad y en la carpeta en la que se escriben los archivos de copia de seguridad. Sin embargo, sp_addumpdevice, que agrega una entrada para un dispositivo de copia de seguridad en las tablas del sistema, no comprueba los permisos de acceso a archivos. Es posible que estos problemas con el archivo físico del dispositivo de copia de seguridad no aparezcan hasta que tenga acceso al recurso físico, al intentar la copia de seguridad o la restauración.
Ejemplos
En esta sección se incluyen los ejemplos siguientes:
- A Copia de seguridad de una base de datos completa
- B. Copia de seguridad de la base de datos y el registro
- C. Crear una copia de seguridad de archivos completa de los grupos de archivos secundarios
- D. Crear una copia de seguridad diferencial de archivos de los grupos de archivos secundarios
- E. Creación y copia de seguridad en un conjunto de medios reflejados de una sola familia
- F. Creación y copia de seguridad en un conjunto de medios reflejados multifamily
- G. Copia de seguridad en un conjunto de medios reflejado existente
- H. Crear una copia de seguridad comprimida en un nuevo conjunto de medios
- Yo. Back hasta Azure Blob Storage
- J. Copia de seguridad en el almacenamiento de objetos compatible con S3
- K. Hacer un seguimiento del progreso de la instrucción de copia de seguridad
Nota:
Los artículos de procedimientos de copia de seguridad contienen ejemplos adicionales. Para obtener más información, consulte Backup overview (SQL Server).
A Copia de seguridad de una base de datos completa
En el siguiente ejemplo se hace una copia de seguridad de la base de datos AdventureWorks2025 en un archivo de disco.
BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH FORMAT;
GO
B. Copia de seguridad de la base de datos y el registro
En el ejemplo siguiente se realiza la copia de seguridad de la base de datos de ejemplo AdventureWorks2025, que usa de forma predeterminada un modelo de recuperación simple. Para admitir las copias de seguridad del registro, la base de datos AdventureWorks2025 se ha modificado para usar el modelo de recuperación completa.
Después, en el ejemplo se usa sp_addumpdevice para crear un dispositivo de copia de seguridad lógico para realizar la copia de seguridad de datos, AdvWorksData, y se crea un dispositivo de copia de seguridad lógico para copiar el registro, AdvWorksLog.
A continuación, en el ejemplo se crea una copia de seguridad de base de datos completa en AdvWorksData y, tras un periodo de actividad de actualización, se copia el registro en AdvWorksLog.
-- To permit log backups, before the full database backup, modify the database
-- to use the full recovery model.
USE master;
GO
ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;
GO
-- Create AdvWorksData and AdvWorksLog logical backup devices.
USE master;
GO
EXECUTE sp_addumpdevice 'disk', 'AdvWorksData', 'Z:\SQLServerBackups\AdvWorksData.bak';
GO
EXECUTE sp_addumpdevice 'disk', 'AdvWorksLog', 'X:\SQLServerBackups\AdvWorksLog.bak';
GO
-- Back up the full AdventureWorks2022 database.
BACKUP DATABASE AdventureWorks2022 TO AdvWorksData;
GO
-- Back up the AdventureWorks2022 log.
BACKUP LOG AdventureWorks2022 TO AdvWorksLog;
GO
Nota:
En el caso de una base de datos de producción, haga una copia de seguridad del registro periódicamente. Las copias de seguridad del registro se deben realizar con una frecuencia suficiente para ofrecer la protección necesaria frente a la pérdida de datos.
C. Crear una copia de seguridad de archivos completa de los grupos de archivos secundarios
En el ejemplo siguiente se crea una copia de seguridad de archivos completa de cada archivo en los dos grupos de archivos secundarios.
--Back up the files in SalesGroup1:
BACKUP DATABASE Sales
FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2'
TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck';
GO
D. Crear una copia de seguridad diferencial de archivos de los grupos de archivos secundarios
En el ejemplo siguiente se crea una copia de seguridad de archivos diferencial de cada archivo en los dos grupos de archivos secundarios.
--Back up the files in SalesGroup1:
BACKUP DATABASE Sales
FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2'
TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck'
WITH DIFFERENTIAL;
GO
E. Creación y copia de seguridad en un conjunto de medios reflejados de una sola familia
En el siguiente ejemplo se crea un conjunto de medios reflejado que contiene una sola familia de medios y cuatro reflejos, y se realiza una copia de seguridad de la base de datos AdventureWorks2025 en ellos.
BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0'
MIRROR TO TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2'
MIRROR TO TAPE = '\\.\tape3'
WITH FORMAT, MEDIANAME = 'AdventureWorksSet0';
F. Creación y copia de seguridad en un conjunto de medios reflejados multifamily
En el siguiente ejemplo se crea un conjunto de medios reflejado en el que cada reflejo consta de dos familias de medios. A continuación, se realiza una copia de seguridad de la base de datos AdventureWorks2025 en ambos reflejos.
BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3'
WITH FORMAT, MEDIANAME = 'AdventureWorksSet1';
G. Copia de seguridad en un conjunto de medios reflejado existente
En el siguiente ejemplo se anexa un conjunto de copia de seguridad al conjunto de medios creado en el ejemplo anterior.
BACKUP LOG AdventureWorks2022
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3'
WITH NOINIT, MEDIANAME = 'AdventureWorksSet1';
Nota:
NOINIT, que es el valor predeterminado, se muestra aquí para mayor claridad.
H. Crear una copia de seguridad comprimida en un nuevo conjunto de medios
En el ejemplo siguiente se da formato a los medios, creando un nuevo conjunto de medios, y se realiza una copia de seguridad completa comprimida de la base de datos AdventureWorks2025.
BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH FORMAT, COMPRESSION;
Yo. Copia de seguridad en Microsoft Azure Blob Storage
En este ejemplo se realiza una copia de seguridad completa de la base de datos de Sales en Azure Blob Storage. El nombre de la cuenta de almacenamiento es mystorageaccount. El contenedor se denomina myfirstcontainer. Ya se ha creado una directiva de acceso almacenada con derechos de lectura, escritura, eliminación y lista. La credencial de SQL Server, https://mystorageaccount.blob.core.windows.net/myfirstcontainer, se creó mediante una firma de acceso compartido asociada a la directiva de acceso almacenado. Para obtener información sobre SQL Server copia de seguridad en Azure Blob Storage, consulte SQL Server copia de seguridad y restauración con Azure Blob Storage y SQL Server copia de seguridad en dirección URL para Azure Blob Storage.
BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales.bak'
WITH STATS = 5;
También puede realizar una copia de seguridad de la base de datos en varias franjas y tendría el siguiente aspecto:
BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-04.bak'
WITH COPY_ONLY;
J. Copia de seguridad en el almacenamiento de objetos compatible con S3
Applies to: SQL Server 2022 (16.x) y versiones posteriores.
En este ejemplo se realiza una copia de seguridad completa de la base de datos Sales en una plataforma de almacenamiento de objetos compatible con S3. El nombre de la credencial no es necesario en la instrucción ni para que coincida con la ruta de acceso de dirección URL exacta, pero realiza una búsqueda de la credencial adecuada en la dirección URL proporcionada. Para obtener más información, consulte Back up and restore SQL Server with S3-compatible object storage.
BACKUP DATABASE Sales
TO URL = 's3://10.10.10.10:8787/sqls3backups/sales_01.bak',
URL = 's3://10.10.10.10:8787/sqls3backups/sales_02.bak',
URL = 's3://10.10.10.10:8787/sqls3backups/sales_03.bak'
WITH FORMAT, STATS = 10, COMPRESSION;
K. Hacer un seguimiento del progreso de la instrucción de copia de seguridad
La consulta siguiente devuelve información sobre las instrucciones de copia de seguridad actualmente en ejecución:
SELECT a.text AS query,
start_time,
percent_complete,
dateadd(second, estimated_completion_time / 1000, getdate()) AS eta
FROM sys.dm_exec_requests AS r
CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) AS a
WHERE r.command LIKE 'BACKUP%';
Contenido relacionado
- Dispositivos de copia de seguridad (SQL Server)
- Conjuntos de medios, familias de medios y conjuntos de copia de seguridad (SQL Server)
- Copias de seguridad del final del registro de transacciones (SQL Server)
- ALTER DATABASE (Transact-SQL)
- DBCC SQLPERF (Transact-SQL)
- RESTORE Instrucciones (Transact-SQL)
- RESTORE Instrucciones : FILELISTONLY (Transact-SQL)
- RESTORE instrucciones : HEADERONLY (Transact-SQL)
- RESTORE Instrucciones : LABELONLY (Transact-SQL)
- RESTORE Instrucciones : VERIFYONLY (Transact-SQL)
- sys.sp_addumpdevice (Transact-SQL)
- sys.sp_configure (Transact-SQL)
- sys.sp_helpfile (Transact-SQL)
- sys.sp_helpfilegroup (Transact-SQL)
- Opciones de configuración del servidor
- Restauración por etapas de bases de datos con tablas con optimización para memoria
* Instancia administrada de SQL *
Azure SQL Managed Instance
Realiza una copia de seguridad de una base de datos SQL en Azure SQL Managed Instance.
Azure SQL Managed Instance tiene copias de seguridad automáticas. Puede crear copias de seguridad COPY_ONLY de bases de datos completas. No se admiten copias de seguridad diferenciales, de registro y de instantáneas de archivos.
También se aplica a SQL Managed Instance habilitado por Azure Arc.
Sintaxis
BACKUP DATABASE { database_name | @database_name_var }
TO URL = { 'physical_device_name' | @physical_device_name_var } [ , ...n ]
WITH COPY_ONLY [ , { <general_WITH_options> } ]
[ ; ]
<general_WITH_options> [ , ...n ] ::=
--Media set options
MEDIADESCRIPTION = { 'text' | @text_variable }
| MEDIANAME = { media_name | @media_name_variable }
| BLOCKSIZE = { blocksize | @blocksize_variable }
--Data Transfer Options
BUFFERCOUNT = { buffercount | @buffercount_variable }
| MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
--Error Management Options
{ NO_CHECKSUM | CHECKSUM }
| { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
--Compatibility Options
RESTART
--Monitoring Options
STATS [ = percentage ]
--Encryption Options
ENCRYPTION (ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY } , encryptor_options ) <encryptor_options> ::=
SERVER CERTIFICATE = Encryptor_Name | SERVER ASYMMETRIC KEY = Encryptor_Name
Argumentos
DATABASE
Especifica una copia de seguridad completa de la base de datos. Durante una copia de seguridad de la base de datos, Azure SQL Managed Instance realiza una copia de seguridad suficiente del registro de transacciones para generar una base de datos coherente cuando se restaura la copia de seguridad.
Importante
Una copia de seguridad de base de datos creada en una instancia administrada solo se puede restaurar en otra Azure SQL Managed Instance o solo en una instancia de SQL Server 2022. Esto se debe a que SQL Managed Instance tiene una versión de base de datos interna superior en comparación con otras versiones de SQL Server. Para obtener más información, consulte Restore a SQL Managed Instance database backup to SQL Server 2022.
Al restaurar una copia de seguridad creada por BACKUP DATABASE (una copia de seguridad de datos), se restaura toda la copia de seguridad. Para restaurar desde SQL Managed Instance copias de seguridad automáticas, consulte Restore a una base de datos Azure SQL Managed Instance.
{ database_name | @database_name_var }
Base de datos desde la que se realiza una copia de seguridad de la base de datos completa. Si se proporciona como variable (@database_name_var), este nombre se puede especificar como una constante de cadena (nombre de basede = @database_name_var) o como una variable de tipo de datos de cadena de caracteres, excepto para los tipos de datos ntext o text.
Para más información, vea Copias de seguridad de archivos completas y Realizar copias de seguridad de archivos y grupos de archivos.
TO URL
Especifica la dirección URL que se usará para la operación de copia de seguridad. El formato de dirección URL se usa para crear copias de seguridad en el servicio de almacenamiento Microsoft Azure.
Importante
Para realizar copias de seguridad en varios dispositivos al realizar una copia de seguridad en la dirección URL, debe usar tokens de firma de acceso compartido (SAS). Para obtener ejemplos de creación de una firma de acceso compartido, consulte SQL Server Backup to URL and Simplifying creation of SQL Credentials with Shared Access Signature (SAS) tokens on Azure Storage with PowerShell.
n
Marcador de posición que indica que se pueden especificar hasta 64 dispositivos de copia de seguridad en una lista separada por comas.
Opciones de WITH
Especifica las opciones que se van a utilizar con una operación de copia de seguridad.
ENCRIPTACIÓN
Se utiliza para especificar el cifrado para una copia de seguridad. Puede especificar un algoritmo de cifrado para cifrar la copia de seguridad o especificar NO_ENCRYPTION para no hacer que la copia de seguridad se cifre. El cifrado es una práctica recomendada para ayudar a proteger los archivos de copia de seguridad. La lista de algoritmos que puede especificar son:
AES_128AES_192AES_256TRIPLE_DES_3KEYNO_ENCRYPTION
Si decide cifrar, también tiene que especificar el cifrador mediante las opciones del cifrador:
SERVER CERTIFICATE = <Encryptor_Name>SERVER ASYMMETRIC KEY = <Encryptor_Name>
Opciones de conjunto de copia de seguridad
COPY_ONLY
Especifica que la copia de seguridad es una copia de seguridad de solo copia, que no afecta a la secuencia normal de copias de seguridad. Una copia de seguridad de solo copia se crea independientemente del Azure SQL Database copias de seguridad automáticas. Para obtener más información, vea Copias de seguridad de solo copia.
{ COMPRESIÓN | NO_COMPRESSION }
Especifica si la compresión de copia de seguridad se realiza en esta copia de seguridad, lo que invalida la configuración predeterminada del servidor.
El comportamiento predeterminado es que no se realice la compresión de copia de seguridad. Este valor predeterminado se puede cambiar estableciendo la opción valor predeterminado de compresión de copia de seguridad de la configuración del servidor. Para más información sobre cómo ver el valor actual de esta opción, vea Ver o cambiar las propiedades del servidor.
COMPRESIÓN
Habilita de forma explícita la compresión de copia de seguridad.
NO_COMPRESSION
Deshabilita de forma explícita la compresión de copia de seguridad.
DESCRIPCIÓN = { 'texto' | @text_variable }
Especifica el texto de forma libre que describe el conjunto de copia de seguridad. La cadena puede tener un máximo de 255 caracteres.
NAME = { backup_set_name | @_backup| set_var }
Especifica el nombre del conjunto de copia de seguridad. Los nombres pueden tener un máximo de 128 caracteres. Si NAME no se especifica, está en blanco.
MEDIADESCRIPTION = { texto | @text_variable }
Especifica la descripción de texto de forma libre, con un máximo de 255 caracteres, del conjunto de medios.
MEDIANAME = { media_name | @media_name_variable }
Especifica el nombre del medio para el conjunto completo de medios de copia de seguridad. El nombre del medio no puede tener más de 128 caracteres y, si se especifica MEDIANAME, debe coincidir con el nombre de medio especificado que ya existe en los volúmenes de copia de seguridad. Si no se especifica o si se especifica la SKIP opción, no hay ninguna comprobación del nombre del medio.
TAMAÑO BLOQUE = { tamaño | de bloque@blocksize_variable }
Especifica el tamaño de bloque físico, en bytes. Los tamaños admitidos son 512, 1024, 2048, 4096, 8192, 16384, 32768 y 65536 (64 KB) bytes. El valor predeterminado es 65536 para dispositivos de cinta y 512 para otros dispositivos. Normalmente, esta opción no es necesaria porque BACKUP selecciona automáticamente un tamaño de bloque adecuado para el dispositivo. La especificación explícita de un tamaño de bloque invalida la selección automática del tamaño de bloque.
Opciones de transferencia de datos
BUFFERCOUNT = { buffercount | @buffercount_variable }
Especifica el número total de búferes de E/S que se van a utilizar para la operación de copia de seguridad. Puede especificar cualquier entero positivo; no obstante, un número de búferes demasiado grande podría provocar errores de "memoria insuficiente" a causa de un espacio de direcciones virtuales inadecuado en el proceso Sqlservr.exe.
El espacio total usado por los búferes está determinado por: BUFFERCOUNT * MAXTRANSFERSIZE.
Nota:
Para obtener información importante sobre el uso de la opción , consulte la BUFFERCOUNT entrada de blog La opción De transferencia de datos BufferCount incorrecta puede dar lugar a una condición de OOM.
MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }
Especifica la unidad de transferencia más grande en bytes que se va a usar entre SQL Server y los medios de copia de seguridad. Los valores posibles son múltiplos de 65536 bytes (64 KB) que van hasta 4.194.304 bytes (4 MB).
| Command | Azure SQL Managed Instance directiva de actualización de SQL Server 2022 o SQL Server 2025 |
Azure SQL Managed Instance Directiva always-up-to-date |
|---|---|---|
| BACKUPURL TO - Azure | Dinámico, elegido por el servicio para las copias de seguridad automáticas. Para las copias de seguridad de COPY_ONLY: valor predeterminado de 1 MB, máximo de 100 MB |
Dinámico, elegido por el servicio para las copias de seguridad automáticas. Para las copias de seguridad de COPY_ONLY: valor predeterminado de 1 MB, máximo de 100 MB |
Para las bases de datos con cifrado de datos transparente (TDE) habilitado con un único archivo de datos, el valor predeterminado MAXTRANSFERSIZE es 65536 (64 KB). Para las bases de datos cifradas que no son TDE, el valor predeterminado MAXTRANSFERSIZE es 1048576 (1 MB) al usar la copia de seguridad DISKen y 65536 (64 KB) al usar VDI o TAPE.
Nota:
MAXTRANSFERSIZE especifica la unidad de transferencia más grande y no garantiza que cada operación de escritura transfiera el tamaño más grande especificado.
MAXTRANSFERSIZE para las operaciones de escritura de copias de seguridad de registros de transacciones seccionadas se establece en 64 KB.
Opciones de administración de errores
Estas opciones permiten determinar si se habilitarán las sumas de comprobación de copia de seguridad para la operación de copia de seguridad y si ésta se detiene al encontrar un error.
{ NO_CHECKSUM | SUMA DE VERIFICACIÓN }
Controla si las sumas de comprobación de copia de seguridad están habilitadas.
NO_CHECKSUM
Deshabilita de forma explícita la generación de sumas de comprobación de copia de seguridad (y la validación de sumas de comprobación de página). Este es el comportamiento predeterminado.
CHECKSUM
Especifica que la operación de copia de seguridad comprueba en cada página si hay suma de comprobación y página rasgada (si está habilitada y disponible) y generará una suma de comprobación para toda la copia de seguridad.
El uso de sumas de comprobación de copia de seguridad puede afectar al rendimiento de la carga de trabajo y de copia de seguridad.
Para más información, vea Errores posibles de medios durante copia de seguridad y restauración.
{ STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
Controla si una operación de copia de seguridad se detiene o continúa después de encontrar un error en la suma de comprobación de página.
STOP_ON_ERROR
Indica
BACKUPque se produzca un error si no se comprueba una suma de comprobación de página. Este es el comportamiento predeterminado.CONTINUAR_DESPUÉS_DEL_ERROR
BACKUPIndica que continúe a pesar de encontrar errores como sumas de comprobación no válidas o páginas rasgadas.
Si no puede realizar una copia de seguridad del final del registro mediante la NO_TRUNCATE opción cuando la base de datos está dañada, puede intentar realizar una copia de seguridad del registro final especificando CONTINUE_AFTER_ERROR en lugar de .NO_TRUNCATE
Para más información, vea Errores posibles de medios durante copia de seguridad y restauración.
Opciones de compatibilidad
REANUDAR
No surte ningún efecto. Esta opción la acepta la versión para que sea compatible con versiones anteriores de SQL Server.
Opciones de supervisión
ESTADÍSTICAS [ = porcentaje ]
Muestra un mensaje cada vez que se completa otro percentage; se usa para indicar el progreso. Si se omite percentage, SQL Server muestra un mensaje después de que se complete cada 10 %.
La STATS opción informa del porcentaje completado a partir del umbral para notificar el siguiente intervalo. Esto es aproximadamente el porcentaje especificado; por ejemplo, con STATS = 10, si la cantidad completada es del 40 por ciento, la opción podría mostrar el 43 por ciento. En el caso de los conjuntos de copia de seguridad grandes, esto no es un problema, ya que el porcentaje completado se mueve muy lentamente entre las llamadas de E/S completadas.
Limitaciones de SQL Managed Instance
El tamaño máximo de la franja de copia de seguridad es de 195 GB (tamaño máximo de blob). Aumente el número de franjas en el comando de copia de seguridad para reducir el tamaño de las franjas y permanecer dentro de este límite.
Seguridad
Permisos
De forma predeterminada, los permisos BACKUP DATABASE se corresponden a los miembros del rol fijo de servidor sysadmin y de los roles fijos de base de datos db_owner y db_backupoperator.
Los problemas de propiedad y permisos de la dirección URL pueden interferir con una operación de copia de seguridad. SQL Server debe poder leer y escribir en el dispositivo; la cuenta con la que se ejecuta el servicio SQL Server debe tener permisos de escritura.
Ejemplos
En el ejemplo se realiza una copia de seguridad de COPY_ONLY de Sales a Microsoft Azure Blob Storage. El nombre de la cuenta de almacenamiento es mystorageaccount. El contenedor se denomina myfirstcontainer. Se ha creado una directiva de acceso almacenada con derechos de lectura, escritura, eliminación y lista. La credencial de SQL Server, https://mystorageaccount.blob.core.windows.net/myfirstcontainer, se creó mediante una firma de acceso compartido asociada a la directiva de acceso almacenado. Para obtener información sobre SQL Server copia de seguridad en Azure Blob Storage, consulte SQL Server Backup and Restore with Microsoft Azure Blob Storage and SQL Server Backup to URL.
BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_20160726.bak'
WITH STATS = 5, COPY_ONLY;
También puede realizar una copia de seguridad de la base de datos en varias franjas y tendría el siguiente aspecto:
BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-04.bak'
WITH COPY_ONLY;