BACKUP (Transact-SQL)

Actualizado: 12 de diciembre de 2006

Realiza una copia de seguridad completa de la base de datos o de uno o varios archivos o grupos de archivos (BACKUP DATABASE). Además, con el modelo de recuperación completa o por medio de registros de operaciones masivas, realiza la copia de seguridad del registro de transacciones (BACKUP LOG).

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

Backing 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 ] } ]
[;]

Backing 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 ] } ]
[;]

Creating 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 ] } ]
[;]

Backing 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_optionspec> } [ ,...n ] ]
[;]

Truncating the Transaction Log (breaks the log chain) 
BACKUP LOG { database_name | @database_name_var } 
  WITH { NO_LOG | TRUNCATE_ONLY } 
[;]

<backup_device>::= 
 {
   { logical_device_name | @logical_device_name_var } 
 | { DISK | TAPE } = 
     { 'physical_device_name' | @physical_device_name_var }
 } 

<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 
  | DESCRIPTION = { 'text' | @text_variable } 
 | NAME = { backup_set_name | @backup_set_name_var } 
 | PASSWORD = { password | @password_variable } 
 | [ EXPIREDATE = { date | @date_var } 
        | RETAINDAYS = { days | @days_var } ] 
 | NO_LOG 

--Media Set Options
   { NOINIT | INIT } 
 | { NOSKIP | SKIP } 
 | { NOFORMAT | FORMAT } 
 | MEDIADESCRIPTION = { 'text' | @text_variable } 
 | MEDIANAME = { media_name | @media_name_variable } 
 | MEDIAPASSWORD = { mediapassword | @mediapassword_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 } 

--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, sólo se realiza la copia de seguridad de esos archivos o grupos de archivos. Durante una copia de seguridad completa o diferencial de una base de datos, SQL Server realiza la copia de seguridad de una parte suficiente del registro de transacciones para producir una base de datos coherente cuando se restaure la base de datos.

    [!NOTA] Sólo se puede realizar una copia de seguridad completa de la base de datos master.

  • LOG
    Especifica que sólo 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. Antes de que pueda crear la primera copia de seguridad del registro, debe crear una copia de seguridad completa.

    [!NOTA] Después de una copia de seguridad del registro típica algunos registros del registro de transacciones se quedan inactivos, 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 del registro rutinarias, algo debe retrasar el truncamiento del registro. Para obtener más información, vea Administrar el registro de transacciones.

  • { database_name| @database_name_var }
    Es la base de datos para la que se realiza la copia de seguridad del registro de transacciones, de una parte de la base de datos o de la base de datos completa. Si se proporciona como una variable (@database_name_var), este nombre se puede especificar como una constante de cadena (@database_name_var
    =
    nombre de la base de datos) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text.

    [!NOTA] No se puede hacer 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 utiliza sólo con BACKUP DATABASE, especifica un grupo de archivos o un archivo de copia de seguridad que se va a incluir en una copia de seguridad de archivos o especifica un grupo de archivos o un archivo de sólo lectura que se va a incluir en una copia de seguridad parcial.

    • FILE = { logical_file_name| **@**logical_file_name_var }
      Es el 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 }
      Es el 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 sólo si se trata de un grupo de archivos de sólo 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.

    • n
      Es un 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: Copias de seguridad de archivos completas y Cómo hacer una copia de seguridad de archivos y grupos de archivos (Transact-SQL).

  • 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 sólo 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 sólo lectura, READ_WRITE_FILEGROUPS incluye tan sólo el grupo de archivos principal.

      ms186865.note(es-es,SQL.90).gifImportante:
      Si se enumeran de forma explícita los grupos de archivos de lectura/escritura con FILEGROUP en vez de READ_WRITE_FILEGROUPS se crea una copia de seguridad de archivos.
    • FILEGROUP = { logical_filegroup_name| **@**logical_filegroup_name_var }
      Es el nombre lógico de un grupo de archivos de sólo lectura o una variable cuyo valor equivale al nombre lógico de un grupo de archivos de sólo lectura que se va a incluir en la copia de seguridad parcial. Para obtener más información, vea "<file_or_filegroup>", anteriormente en este tema.
    • n
      Es un marcador de posición que indica que se pueden especificar varios grupos de archivos de sólo lectura en una lista separada por comas.

    Para obtener más información acerca de las copias de seguridad parciales, vea Copias de seguridad parciales.

  • TO <backup_device> [ ,...n ]
    Indica que el conjunto de dispositivos de copia de seguridad correspondiente es un conjunto de medios no reflejado o el primero de los reflejos de un conjunto de medios reflejado (para los que se declaran una o más cláusulas MIRROR TO).

    • <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 }
        Es el nombre lógico del dispositivo de copia de seguridad (creado por sp_addumpdevice) en el que se realiza la copia de seguridad de la base de datos. El nombre lógico debe seguir las reglas definidas para los identificadores. Si se proporciona como una 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 de copia de seguridad lógico) o como una variable de un tipo de datos de cadena de caracteres, excepto los tipos de datos ntext o text.
      • { DISK | TAPE } = { 'physical_device_name' | **@**physical_device_name_var }
        Especifica un archivo de disco o un dispositivo de cinta. No es necesario que exista el dispositivo especificado antes de ejecutar la instrucción BACKUP. Si el dispositivo físico existe y no se especifica la opción INIT en la instrucción BACKUP, la copia de seguridad se anexa al dispositivo.

        Para obtener más información, vea Dispositivos de copia de seguridad.

    • n
      Es un 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 uno o varios dispositivos de copia de seguridad que reflejarán los dispositivos de copia de seguridad especificados en la cláusula TO. La cláusula MIRROR TO debe incluir el mismo número y tipo de dispositivos de copia de seguridad que la cláusula TO. El número máximo de cláusulas MIRROR TO es tres.

    Esta opción sólo está disponible en SQL Server 2005 Enterprise Edition y en las versiones posteriores.

    [!NOTA] Para MIRROR TO = DISK, BACKUP determina automáticamente el tamaño de bloque apropiado de los dispositivos de disco. Para obtener más información acerca del tamaño de bloque, vea "BLOCKSIZE" más adelante en esta tabla.

    • <backup_device>
      Vea "<backup_device>", en un apartado anterior de esta sección.
    • n
      Es un 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 cláusula MIRROR TO debe ser igual al número de dispositivos de la cláusula TO.
  • [ next-mirror-to ]
    Es un marcador de posición que indica que una sola instrucción BACKUP puede contener hasta tres cláusulas MIRROR TO, además de una sola cláusula TO.

Opciones de WITH

Especifica las opciones que se van a utilizar con una operación de copia de seguridad.

  • DIFFERENTIAL
    Se utiliza sólo con BACKUP DATABASE. Especifica que la copia de seguridad de la base de datos o el archivo sólo debe estar compuesta por las partes de la base de datos o el archivo que hayan cambiado desde la última copia de seguridad completa. Una copia de seguridad diferencial suele ocupar menos espacio que una copia de seguridad completa. Utilice esta opción para que no tenga que aplicar todas las copias de seguridad de registros individuales efectuadas desde que se realizó la última copia de seguridad completa.

    [!NOTA] De forma predeterminada, BACKUP DATABASE crea una copia de seguridad completa.

    Para obtener más información, vea Usar copias de seguridad diferenciales.

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 obtener más información acerca de cómo especificar un conjunto de copia de seguridad, vea RESTORE (argumentos, Transact-SQL).

  • COPY_ONLY
    Especifica que la copia de seguridad es una copia de seguridad de sólo copia, que no afecta a la secuencia normal de copias de seguridad. Se crea una copia de seguridad de sólo copia independientemente de las copias de seguridad convencionales programadas regularmente. Una copia de seguridad de sólo copia no afecta a los procedimientos de copia de seguridad y restauración generales de la base de datos.

    Las copias de seguridad de sólo copia se introdujeron en SQL Server 2005 para usarlas en situaciones en las que se realiza una copia de seguridad con un fin específico, como realizar la copia de seguridad del registro antes de una restauración de archivos en línea. Normalmente, una copia de seguridad de sólo copia se usa una vez y se elimina.

    • Cuando se usa con BACKUP DATABASE, la opción COPY_ONLY crea una copia de seguridad completa que no se puede utilizar como una base diferencial. El mapa de bits diferencial no se actualiza y las copias de seguridad diferenciales se comportan como si no existiera la copia de seguridad de sólo copia. Las copias de seguridad diferenciales posteriores usarán la copia de seguridad completa convencional más reciente como base.
      ms186865.note(es-es,SQL.90).gifImportante:
      Si DIFFERENTIAL y COPY_ONLY se usan juntas, COPY_ONLY se omite y se crea una copia de seguridad diferencial.
    • Cuando se usa con BACKUP LOG, la opción COPY_ONLY crea una copia de seguridad de registros de sólo copia , que no trunca el registro de transacciones. La copia de seguridad de registros de sólo copia no afecta a la cadena de registros y otras copias de seguridad de registros se comportan como si no existiera la copia de seguridad de sólo copia.

    Para obtener más información, vea Copias de seguridad de sólo copia.

  • DESCRIPTION = { 'text' | **@**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 no se especifica NAME, está en blanco.
  • PASSWORD = { password | **@**password_variable }
    Establece la contraseña del conjunto de copia de seguridad. PASSWORD es una cadena de caracteres. Si se define una contraseña para el conjunto de copia de seguridad, debe suministrarla para realizar operaciones de restauración de SQL Server de ese conjunto de copia de seguridad. No obstante, la contraseña del conjunto de copia de seguridad no impide que se sobrescriba el archivo de copia de seguridad. Para evitar que se sobrescriba el archivo de copia de seguridad, utilice una contraseña para el conjunto de medios (vea la opción MEDIAPASSWORD más adelante en esta tabla). (Para obtener más información sobre cómo utilizar las contraseñas, vea "Permisos", más adelante en este tema.)

    ms186865.security(es-es,SQL.90).gifNota de seguridad:
    El nivel de protección que proporciona esta contraseña es bajo. El objetivo es impedir una restauración incorrecta con las herramientas de SQL Server 2005, ya sea por parte de usuarios autorizados o no autorizados. No impide la lectura de los datos de copia de seguridad por otros medios ni el reemplazo de la contraseña. La práctica recomendada para proteger las copias de seguridad consiste en almacenar las cintas de copia de seguridad en una ubicación segura o hacer una copia de seguridad en archivos de disco protegidos mediante las listas de control de acceso (ACL) adecuadas. Las ACL se deben establecer en el directorio raíz en el que se crean las copias de seguridad.

    [!NOTA] La opción PASSWORD se quitará en una versión futura de SQL Server.

  • [ EXPIREDATE = date | RETAINDAYS = date ]
    Especifica cuándo se puede sobrescribir el conjunto de copia de seguridad para esta copia de seguridad. Si se usan las dos opciones, RETAINDAYS tiene precedencia sobre EXPIREDATE.

    Si no se especifica ninguna opción, la fecha de caducidad se determina con el valor de configuración mediaretention. Para obtener más información, vea Establecer las opciones de configuración del servidor.

    ms186865.note(es-es,SQL.90).gifImportante:
    Estas opciones sólo 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 acerca de la comprobación de la caducidad, vea SKIP y FORMAT en este tema.
    • EXPIREDATE = { date | **@**date_var }
      Especifica cuándo el conjunto de copia de seguridad caduca y se puede sobrescribir. Si se proporciona como una variable (@date_var), esta fecha debe seguir el formato datetime configurado para el sistema y se debe especificar de uno de los siguientes modos:

      • 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 tipo de datos smalldatetime
      • Una variable datetime

      Por ejemplo:

      • 'Dec 31, 2020 11:59 PM'
      • '1/1/2021'

      Para obtener información acerca de cómo especificar valores de tipo datetime, vea Formato alfabético de fecha y Formato numérico de fecha.

      [!NOTA] Para omitir la fecha de caducidad, use la opción SKIP.

    • RETAINDAYS = { days| **@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), se debe especificar como un entero.
  • NO_LOG
    En el contexto de una instrucción BACKUP DATABASE, especifica que la copia de seguridad no contendrá ningún registro. Equivale a las copias de seguridad de archivos creadas antes de SQL Server 2005. Una copia de seguridad de bases de datos creada con NO_LOG equivale a un conjunto completo de copias de seguridad de archivos que no contiene datos del registro.

    En el modelo de recuperación completo, NO_LOG es útil si necesita realizar una copia de seguridad de los datos rápidamente y tiene una secuencia completa de copias de seguridad de registros de esos datos.

Opciones de conjuntos de medios

Estas opciones funcionan para todo el conjunto de medios.

  • { NOINIT | 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 copias de seguridad más reciente en el medio (NOINIT).

    [!NOTA] Para obtener información acerca de las interacciones entre { NOINIT | INIT } y { NOSKIP | SKIP }, vea "Notas", más adelante en este tema.

    • 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. NOINIT es el valor predeterminado.

      Para obtener más información, vea Anexar a conjuntos de copia de seguridad existentes.

    • INIT
      Especifica que se deben sobrescribir todos los conjuntos de copia de seguridad, pero conserva el encabezado de los medios. Si se especifica INIT, se sobrescriben todos los conjuntos de copia de seguridad existentes en el dispositivo, si las condiciones lo permiten. De forma predeterminada, BACKUP comprueba las siguientes condiciones y no sobrescribe los medios de copia de seguridad en caso de existir alguna de las condiciones siguientes:

      • Aún no ha caducado ningún conjunto de copia de seguridad. Para obtener más información, vea las opciones EXPIREDATE y RETAINDAYS.
      • El nombre del conjunto de copia de seguridad proporcionado en la instrucción BACKUP, si se especificó, no coincide con el nombre del medio de copia de seguridad. Para obtener más información, vea la opción NAME, descrita anteriormente de esta sección.

      Para omitir estas comprobaciones, utilice la opción SKIP.

      [!NOTA] Si los medios de copia de seguridad están protegidos con contraseña, SQL Server no escribe en los medios a menos que se proporcione la contraseña de los medios. La opción SKIP no anula esta opción. Los medios protegidos con contraseña sólo se pueden sobrescribir si se les vuelve a formatear, lo que elimina las copias de seguridad de los medios. Para obtener información acerca de la contraseña de los medios, vea "MEDIAPASSWORD", anteriormente en este tema. Para obtener información acerca de cómo volver a formatear los medios, vea "FORMAT", anteriormente en este tema.

      Para obtener más información, vea Sobrescribir conjuntos de copia de seguridad.

  • { NOSKIP | SKIP }
    Controla si una operación de copia de seguridad comprueba la fecha y la hora de caducidad de los conjuntos de copias de seguridad en el medio antes de sobrescribirlos.

    [!NOTA] Para obtener información acerca de las interacciones entre { NOINIT | INIT } y { NOSKIP | SKIP }, vea "Notas", más adelante en este tema.

    • NOSKIP
      Indica a la instrucción BACKUP que compruebe la fecha de caducidad de todos los conjuntos de copia de seguridad de los medios antes de permitir que se sobrescriban. Éste es el comportamiento predeterminado.
    • SKIP
      Deshabilita la comprobación de la caducidad y el nombre del conjunto de copia de seguridad que suele realizar la instrucción BACKUP para impedir que se sobrescriban los conjuntos de copia de seguridad. Para obtener más información acerca de las interacciones entre { INIT | NOINIT } y { NOSKIP | SKIP }, vea "Notas", más adelante en este tema.

      Para ver las fechas de caducidad de los conjuntos de copias de seguridad, consulte la columna expiration_date de la tabla del historial de backupset.

  • { NOFORMAT | FORMAT }
    Especifica si debe escribirse el encabezado del medio en los volúmenes usados en esta operación de copia de seguridad, lo que sobrescribirá los conjuntos de copias de seguridad y el encabezado del medio existentes.

    • NOFORMAT
      Especifica que la operación de copia de seguridad conservará los conjuntos de copias de seguridad y el encabezado del medio existentes en los volúmenes del medio usados en esta operación de copia de seguridad. Éste es el comportamiento predeterminado.
    • FORMAT
      Especifica que se debe crear un conjunto de medios nuevo. FORMAT hace que la operación de copia de seguridad escriba un nuevo encabezado en todos los volúmenes del medio 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 del medio existentes.

      ms186865.note(es-es,SQL.90).gifImportante:
      Utilice FORMAT con precaución. 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.

      La especificación de FORMAT implica SKIP y no es necesario especificar SKIP de forma explícita.

  • MEDIADESCRIPTION = { text | **@**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 se especifica la opción SKIP, no se realiza la comprobación del nombre del medio.
  • MEDIAPASSWORD = { mediapassword | **@**mediapassword_variable }
    Establece la contraseña del conjunto de medios. MEDIAPASSWORD es una cadena de caracteres.

    Si se ha definido una contraseña para el conjunto de medios, debe proporcionarla para poder crear un conjunto de copia de seguridad en ese conjunto de medios. Además, debe proporcionar la contraseña para realizar cualquier operación de restauración del conjunto de medios. Para sobrescribir los medios protegidos con contraseña, es necesario volver a darles formato. Para obtener más información, vea la opción FORMAT. (Para obtener más información sobre cómo utilizar las contraseñas, vea la sección Permisos más adelante en este tema.)

    ms186865.security(es-es,SQL.90).gifNota de seguridad:
    El nivel de protección que proporciona esta contraseña es bajo. El objetivo es impedir una restauración incorrecta con las herramientas de SQL Server 2005, ya sea por parte de usuarios autorizados o no autorizados. No impide la lectura de los datos de copia de seguridad por otros medios ni el reemplazo de la contraseña. La práctica recomendada para proteger las copias de seguridad consiste en almacenar las cintas de copia de seguridad en una ubicación segura o hacer una copia de seguridad en archivos de disco protegidos mediante las listas de control de acceso (ACL) adecuadas. Las ACL se deben establecer en el directorio raíz en el que se crean las copias de seguridad.

    [!NOTA] La opción MEDIAPASSWORD se quitará en una versión futura de SQL Server.

  • BLOCKSIZE = { blocksize | **@**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, ya que BACKUP selecciona automáticamente un tamaño de bloque apropiado para el dispositivo. La especificación explícita de un tamaño de bloque reemplaza la selección automática del tamaño de bloque.

    Si va a realizar una copia de seguridad en CD-ROM que pretende utilizar para copiar y restaurar, especifique BLOCKSIZE=2048.

    [!NOTA] Normalmente, esta opción sólo 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 utilizado por los búferes está determinado por: buffercount*****maxtransfersize.

  • MAXTRANSFERSIZE = { maxtransfersize | **@**maxtransfersize_variable }
    Especifica la unidad de transferencia más grande (en bytes) que se debe utilizar entre SQL Server y el medio de copia de seguridad. Los valores posibles son múltiplos de 65536 bytes (64 KB), hasta un máximo de 4194304 bytes (4 MB).

Operaciones 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 detendrá al encontrar un error.

  • { NO_CHECKSUM | CHECKSUM }
    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). Éste es el comportamiento predeterminado.
    • CHECKSUM
      Habilita las sumas de comprobación de copia de seguridad, por lo que BACKUP puede hacer lo siguiente:

      1. Antes de escribir una página en el medio de copia de seguridad, BACKUP comprueba la página (suma de comprobación de página o página rasgada), si esta información se incluye en la página.
      2. Aunque se incluyan sumas de comprobación de página, BACKUP genera una suma de comprobación de copia de seguridad independiente para las secuencias de copia de seguridad. Opcionalmente, las operaciones de restauración pueden utilizar la suma de comprobación de copia de seguridad para confirmar que la copia de seguridad no está dañada. La suma de comprobación de copia de seguridad se almacena en el medio de copia de seguridad y no en las páginas de la base de datos. La suma de comprobación de copia de seguridad se puede utilizar en el momento de la restauración.

      El uso de sumas de comprobación de copia de seguridad puede afectar a la carga de trabajo y al rendimiento de la copia de seguridad.

  • { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }
    Controla si una operación de copia de seguridad se detiene o continúa después de encontrar una suma de comprobación de página.

    • STOP_ON_ERROR
      Indica a BACKUP que dé error si no se comprueba una suma de comprobación de página. Éste es el comportamiento predeterminado.
    • CONTINUE_AFTER_ERROR
      Indica a BACKUP que continúe a pesar de la detección de errores como sumas de comprobación no válidas o páginas rasgadas.

      Si no puede realizar la copia de seguridad del final del registro con la opción NO_TRUNCATE cuando la base de datos está dañada, puede intentar una copia de seguridad de registros después del error especificando CONTINUE_AFTER_ERROR en vez de NO_TRUNCATE.

Opciones de compatibilidad

  • RESTART
    No surte ningún efecto. La versión acepta esta opción por motivos de compatibilidad con las versiones anteriores de SQL Server.

Opciones de supervisión

  • STATS [ **=**percentage ]
    Muestra un mensaje cada vez que se completa otro porcentaje (percentage) y se utiliza para indicar el progreso. Si se omite percentage, SQL Server muestra un mensaje después de completar cada 10 por ciento.

    La opción STATS informa del porcentaje completado desde el umbral para informar del próximo intervalo. Éste es aproximadamente el porcentaje especificado; por ejemplo, con STATS=10, si la cantidad completada equivale al 40 por ciento, la opción puede mostrar el 43 por ciento. En el caso de los conjuntos de copia de seguridad de gran tamaño, esto no representa ningún problema porque el porcentaje completado se mueve muy lentamente entre las llamadas de E/S.

Opciones de cinta

Estas opciones sólo se utilizan para dispositivos de cinta. Se omitirán si se utiliza otro tipo de dispositivo.

  • { REWIND | NOREWIND }

    • REWIND
      Especifica que SQL Server liberará y rebobinará la cinta. REWIND es la opción predeterminada.
    • NOREWIND
      Especifica que SQL Server mantendrá la cinta abierta tras 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.

      NOREWIND implica NOUNLOAD, y estas opciones son incompatibles en una sola instrucción BACKUP.

      [!NOTA] Si utiliza NOREWIND, la instancia de SQL Server conserva la propiedad de la unidad de cinta hasta que una instrucción BACKUP o RESTORE que se ejecuta en el mismo proceso utiliza la opción REWIND o UNLOAD, o bien se cierra la instancia del servidor. Mantener abierta la cinta evita que otros procesos obtengan acceso a la misma. Para obtener más información sobre cómo mostrar una lista de cintas abiertas y cómo cerrar una cinta abierta, vea Dispositivos de copia de seguridad.

  • { UNLOAD | NOUNLOAD }

    [!NOTA] UNLOAD/NOUNLOAD es una configuración de sesión que persiste mientras dure la sesión o hasta que se reinicie especificando la alternativa.

    • UNLOAD
      Especifica que la cinta se rebobina y descarga automáticamente al terminar la copia de seguridad. UNLOAD es el valor predeterminado cuando se inicia una sesión.
    • NOUNLOAD
      Especifica que tras la operación de copia de seguridad la cinta permanecerá cargada en la unidad de cinta.

[!NOTA] Para 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 sólo afecta al rendimiento al escribir en dispositivos de cinta.

Opciones específicas del registro

Estas opciones sólo se usan con BACKUP LOG.

[!NOTA] Si no desea hacer copias de seguridad del registro, use el modelo de recuperación simple. Para obtener más información, vea Crear copias de seguridad en el modelo de recuperación simple.

  • { NORECOVERY | STANDBY **=**undo_file_name }

    • NORECOVERY
      Realiza una copia de seguridad de registros después del error y deja la base de datos en el estado RESTORING. NORECOVERY resulta útil cuando, en caso de error, se conmuta a una base de datos secundaria y al guardar los registros después del error antes de una operación RESTORE.

      Para hacer una copia de seguridad de registros óptima que omita el truncamiento de los registros y, a continuación, establecer la base de datos en el estado RESTORING de forma atómica, utilice las opciones NO_TRUNCATE y NORECOVERY conjuntamente.

    • STANDBY **=**standby_file_name
      Realiza una copia de seguridad de registros después del error y deja la base de datos en modo de sólo lectura y en el estado STANDBY. La cláusula STANDBY escribe datos en espera (realiza la reversión, pero con la posibilidad de recuperaciones posteriores). El uso de la opción STANDBY es equivalente a BACKUP LOG WITH NORECOVERY seguido de RESTORE WITH STANDBY.

      El 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, Database Engine (Motor de base de datos) lo sobrescribe; si no existe, Database Engine (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 las operaciones RESTORE LOG 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 no se va a truncar y hace que Database Engine (Motor de base de datos) intente hacer la copia de seguridad con independencia del estado de la base de datos. Por consiguiente, una copia de seguridad realizada con NO_TRUNCATE puede tener metadatos incompletos. Esta opción permite realizar copias de seguridad del registro cuando la base de datos está dañada.

    La opción NO_TRUNCATE de BACKUP LOG es equivalente a la especificación de COPY_ONLY y CONTINUE_AFTER_ERROR.

    Sin la opción NO_TRUNCATE, la base de datos debe estar conectada.

    Si la base de datos se encuentra en el estado OFFLINE o EMERGENCY, no se admite BACKUP, ni siquiera con NO_TRUNCATE.

  • [ NO_LOG | TRUNCATE_ONLY ]

    [!NOTA] Esta opción se quitará en una versión futura de SQL Server. Evite su uso en los nuevos trabajos de desarrollo y piense en modificar las aplicaciones que la usan actualmente.

    Sólo se usa en instrucciones BACKUP LOG, donde ejecuta un punto de comprobación para forzar manualmente que se trunque el registro de transacciones. NO_LOG y TRUNCATE_ONLY son sinónimos. No es necesario especificar ningún dispositivo de copia de seguridad, porque el registro no se copia.

    En el modelo de recuperación simple, al ejecutar un punto de comprobación se quita la parte inactiva del registro sin realizar la copia de seguridad. Esto trunca el registro al descartar todo menos el registro activo. Esta opción libera espacio, pero supone un riesgo de pérdida de datos. Después de truncar el registro mediante NO_LOG o TRUNCATE_ONLY, no se podrán recuperar los cambios registrados en la parte truncada del registro hasta la siguiente copia de seguridad de bases de datos. Por tanto, para la recuperación, después de utilizar una de estas opciones, ejecute inmediatamente BACKUP DATABASE para realizar una copia de seguridad diferencial o completa de la base de datos.

    ms186865.Caution(es-es,SQL.90).gifAdvertencia:
    Se recomienda no usar nunca la opción NO_LOG o TRUNCATE_ONLY para truncar manualmente el registro de transacciones, porque rompe la cadena de registros. La base de datos no estará protegida contra errores en los medios hasta que se realice la siguiente copia de seguridad completa o diferencial de la base de datos. Utilice el truncamiento manual tan sólo en circunstancias muy especiales y haga copias de seguridad de los datos inmediatamente.

Notas

Se pueden anexar copias de seguridad de la base de datos o del registro 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 instrucción BACKUP no se permite en una transacción explícita o implícita.

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.

Para obtener información acerca de terminología relacionada con la copia de seguridad, los dispositivos de copia de seguridad y la administración de copias de seguridad, vea Trabajar con medios de copia de seguridad en SQL Server.

Simultaneidad

SQL Server utiliza el proceso de copia de seguridad con conexión para permitir que se realice la copia de seguridad de una base de datos mientras se está utilizando. Durante la copia de seguridad, se pueden realizar la mayoría de las operaciones (por ejemplo, las instrucciones INSERT, UPDATE o DELETE están permitidas durante la operación de copia de seguridad).

Las operaciones que no se pueden ejecutar durante la copia de seguridad de la base de datos o el registro de transacciones son:

  • Operaciones de administración de archivos como la instrucción ALTER DATABASE con las opciones ADD FILE o REMOVE 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 a una operación de administración de archivos o de reducción, surge un conflicto. Con independencia de la operación en conflicto que empieza en primer lugar, la segunda operación espera a que se agote el tiempo de espera del bloqueo establecido por la primera operación (el tiempo de espera se controla mediante un valor de tiempo de espera de sesión). Si el bloqueo se libera durante el tiempo de espera, la segunda operación continúa. Si se agota el tiempo de espera, la segunda operación no se realiza correctamente.

Formatear medios de copia de seguridad

Con una instrucción BACKUP se formatean los medios de copia de seguridad si y sólo si se cumple alguna de las siguientes condiciones:

  • Se especifica la opción FORMAT.
  • El medio está vacío.
  • En la operación se está escribiendo una cinta de continuación.

Para obtener más información, vea Crear un conjunto de medios.

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.

    Parcial de la base de datos

    Las copias de seguridad parciales abarcan grupos de archivos de lectura/escritura y, posiblemente, uno o varios grupos de archivos o archivos de sólo lectura.

    Archivo o grupo de archivos

    Las copias de seguridad de archivos abarcan uno o varios archivos o grupos de archivos y sólo son relevantes para bases de datos que contienen 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 sólo lectura.

  • En el modelo de recuperación completo o el modelo de recuperación por medio de registros de operaciones masivas, 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 de registros 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 de registros anterior.

    [!NOTA] Antes de que pueda crear la primera copia de seguridad del registro, debe crear una copia de seguridad completa.

    Para obtener más información, vea Trabajar con copias de seguridad del registro de transacciones.

  • La copia de seguridad de sólo 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 sólo copia, especifique la opción COPY_ONLY en la instrucción BACKUP. Para obtener más información, vea Copias de seguridad de sólo copia.

Copia de seguridad de datos de texto

Durante una copia de seguridad completa de la base de datos en SQL Server 2005, se realiza una copia de seguridad de los datos de texto junto con otros datos de la base de datos. La operación de copia de seguridad trata los catálogos de texto como archivos. Por ejemplo, se puede hacer una copia de seguridad de los catálogos por separado mediante el uso de una cláusula FILE= para seleccionar los catálogos. (El nombre de archivo lógico para cada catálogo de texto tiene la forma sysft_<nombreDelCatálogo>.)

Durante la copia de seguridad, el catálogo se establece en el modo de sólo lectura para que la actividad de "rastreo" (el proceso mediante el cual se crea y mantiene un índice de texto) se suspenda hasta completar la copia de seguridad.

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 en disco no existe, todas estas interacciones escriben un encabezado de medio y continúan. Si el medio no está vacío y no contiene ningún encabezado de medio válido, estas operaciones proporcionan un comentario que indica que no se trata de un medio MTF válido y finalizan la operación de copia de seguridad.

  NOINIT INIT

NOSKIP

Si el volumen contiene un encabezado de medio válido, se comprueba la contraseña del medio y que el nombre del medio coincida con el valor de MEDIANAME, si se proporcionó. Si coincide, se anexa el conjunto de copia de seguridad y mantenga todos los conjuntos de copia de seguridad existentes.

Si el volumen no contiene un encabezado de medio válido, se produce un error.

Si el volumen contiene un encabezado de medio válido, se realizan las siguientes comprobaciones:

  • Se comprueba la contraseña del medio.2
  • Si se especificó MEDIANAME, se comprueba que el nombre del medio proporcionado coincide con el nombre del encabezado del medio.
  • Se comprueba que no haya conjuntos de copia de seguridad no caducados en el medio.
    Si los hay, se finaliza la copia de seguridad.

Si las comprobaciones son correctas, se sobrescriben los conjuntos de copia de seguridad del medio y sólo se mantiene el encabezado del medio.

Si el volumen no contiene ningún encabezado de medio válido, se genera uno con los MEDIANAME, MEDIAPASSWORD y MEDIADESCRIPTION especificados, si existen.

SKIP

Si el volumen contiene un encabezado del medio válido, se comprueba la contraseña del medio y se anexa el conjunto de copia de seguridad; lo que mantiene todos los conjuntos de copia de seguridad existentes.

Si el volumen contiene un encabezado del medio válido1, la contraseña del medio se comprueba y los conjuntos de copia de seguridad del medio se sobrescriben a la vez que mantiene sólo el encabezado del medio.

Si el medio está vacío, se genera un contraseña del medio con el MEDIANAME, MEDIAPASSWORD y MEDIADESCRIPTION especificados, si existen.

1 La validez incluye el número de versión de MTF y otra información acerca del encabezado. Si la versión especificada no es compatible o se trata de un valor no esperado, se produce un error.

2 El usuario debe pertenecer a las funciones fijas de servidor o de base de datos y proporcionar la contraseña correcta del medio para realizar una operación de copia de seguridad.

Tablas del historial de copias de seguridad

SQL Server incluye las siguientes tablas del historial de copias de seguridad que realizan un seguimiento de la actividad de copia de seguridad:

Al realizar una restauración, si el conjunto de copia de seguridad aún no se ha registrado en la base de datos msdb, las tablas del historial de copias de seguridad se pueden modificar.

Soporte de compatibilidad

ms186865.Caution(es-es,SQL.90).gifAdvertencia:
Las copias de seguridad que se crean en una versión más reciente de SQL Server no se pueden restaurar en versiones anteriores de SQL Server.

BACKUP admite las siguientes palabras clave para proporcionar compatibilidad con versiones anteriores de SQL Server:

  • La opción RESTART se acepta por compatibilidad, pero no tiene efecto en SQL Server 2005.
  • Para mantener la compatibilidad con versiones anteriores, puede usar la palabra clave DUMP en vez de BACKUP en las instrucciones de BACKUP. Además, puede usar la palabra clave TRANSACTION en vez de LOG. SQL Server Database Engine (Motor de base de datos de SQL Server) interpreta DUMP DATABASE o DUMP TRANSACTION igual que BACKUP DATABASE o BACKUP LOG, respectivamente.
    ms186865.note(es-es,SQL.90).gifImportante:
    La instrucción DUMP sólo se mantiene por compatibilidad con versiones anteriores. Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. En su lugar, utilice BACKUP.

Dispositivos de copia de seguridad en un conjunto de medios distribuido (conjunto de bandas)

Un conjunto de bandas es un conjunto de archivos de disco en el que los datos se dividen en bloques y se reparten en un orden fijo. El número de dispositivos de copia de seguridad utilizados en un conjunto de bandas 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 AdventureWorks en un nuevo conjunto de medios distribuido que utiliza tres archivos de disco.

BACKUP DATABASE AdventureWorks
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 AdventureWorks database;
GO

Después de definir un dispositivo de copia de seguridad como parte de un conjunto de bandas, no se puede utilizar para realizar copias de seguridad en un único dispositivo a menos que se especifique FORMAT. De forma similar, un dispositivo de copia de seguridad que contenga copias de seguridad sin bandas no se puede utilizar en un conjunto de bandas a menos que se especifique FORMAT. Para dividir un conjunto de copia de seguridad distribuido, utilice FORMAT.

Si no se especifica MEDIANAME o MEDIADESCRIPTION al escribir el encabezado del medio, el campo de encabezado del medio que corresponde al elemento en blanco está vacío.

Trabajar con un conjunto de medios reflejado

Normalmente, las copias de seguridad no se reflejan, y las instrucciones BACKUP simplemente incluyen una cláusula TO. No obstante, es posible un total de cuatro reflejos por 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 solo 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.

En el caso de un conjunto de medios reflejado, cada cláusula MIRROR TO debe incluir el mismo número y tipo de dispositivos que la cláusula TO. En el siguiente ejemplo se escribe en un conjunto de medios reflejado que contiene dos reflejos y usa tres dispositivos por reflejo:

BACKUP DATABASE AdventureWorks
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
ms186865.note(es-es,SQL.90).gifImportante:
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 cláusula TO de una instrucción BACKUP corresponde a una familia de medios. Por ejemplo, si la cláusula TO incluye tres dispositivos, BACKUP escribe los datos en tres familias de medios. En un conjunto de medios reflejado, cada reflejo debe contener una copia de cada familia de medios. Esto es porque 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 se muestra la correspondencia entre los dispositivos y las familias de medios en la tabla siguiente.

Reflejo Familia de medios 1 Familia de medios 2 Familia de medios 3

0

C:\AdventureWorks1a.bak

C:\AdventureWorks2a.bak

C:\AdventureWorks3a.bak

1

C:\AdventureWorks1b.bak

C:\AdventureWorks2b.bak

C:\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 acerca de los conjuntos de medios reflejados, vea Usar conjuntos de medios de copia de seguridad reflejados. Para obtener más información acerca de los conjuntos y las familias de medios en general, vea Conjuntos de medios, familias de medios y conjuntos de copias de seguridad.

Permisos

De forma predeterminada, los permisos de BACKUP DATABASE y BACKUP LOG corresponden a los miembros de la función fija de servidor sysadmin y de las funciones fijas de base de datos db_owner y db_backupoperator.

Además, el usuario puede especificar las contraseñas del conjunto de medios, del conjunto de copia de seguridad o de ambos. Si se define una contraseña para un conjunto de medios, el usuario debe proporcionar además la contraseña del medio para realizar estas operaciones. De forma similar, no se permite la restauración a menos que se especifiquen las contraseñas correctas del medio y del conjunto de copia de seguridad en el comando de restauración.

La definición de contraseñas para conjuntos de copia de seguridad y conjuntos de medios es una característica opcional de la instrucción BACKUP. El nivel de protección que proporciona esta contraseña es bajo. El objetivo es impedir una restauración incorrecta mediante las herramientas de SQL Server 2005 ya sea por parte de usuarios autorizados o no autorizados. No impide la lectura de los datos de copia de seguridad por otros medios ni el reemplazo de la contraseña. Además, las contraseñas no evitan la sobrescritura de medios con la opción FORMAT. Es recomendable utilizar contraseñas seguras. Para obtener información acerca de las contraseñas seguras, vea Contraseñas seguras.

Por lo tanto, aunque la utilización de contraseñas puede ayudar a proteger el contenido del medio contra accesos no autorizados con las herramientas de SQL Server, las contraseñas no impiden la destrucción del contenido. Las contraseñas no protegen completamente el contenido de los medios contra accesos no autorizados, porque los datos de los conjuntos de copia de seguridad no están cifrados y, teóricamente, se podrían examinar con programas creados específicamente para este propósito. En los casos en que la seguridad es fundamental, es importante evitar que personas no autorizadas tengan acceso físico a los medios.

Es un error especificar una contraseña para objetos que no se crearon con contraseñas asociadas.

BACKUP crea el conjunto de copia de seguridad con la contraseña del conjunto de copia de seguridad que se proporcionó con la opción PASSWORD. Además, BACKUP normalmente comprueba la contraseña del medio proporcionada por la opción MEDIAPASSWORD antes de escribir en el medio. La única vez que BACKUP no comprueba la contraseña del medio es cuando da formato al mismo, sobrescribiendo el encabezado del medio. Si BACKUP escribe el encabezado del medio, BACKUP asignará al conjunto de medios una contraseña cuyo valor se especifica en la opción MEDIAPASSWORD.

Para obtener información acerca del impacto de las contraseñas en las opciones SKIP, NOSKIP, INIT y NOINIT, vea "Notas", más adelante en este tema.

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. SQL Server debe poder leer y escribir en el dispositivo y la cuenta en la que se ejecuta el servicio SQL Server debe tener permisos de escritura. No obstante, sp_addumpdevice, que agrega una entrada para un dispositivo en las tablas del sistema, no comprueba los permisos de acceso a los archivos. Es posible que estos problemas con el archivo físico del dispositivo de copia de seguridad no aparezcan hasta que se tenga acceso al recurso físico, al intentar la copia de seguridad o la restauración.

Ejemplos

[!NOTA] La base de datos AdventureWorks se muestra a modo de ejemplo. AdventureWorks es una de las bases de datos de ejemplo de SQL Server 2005. Adventure Works Cycles es una compañía ficticia que se utiliza para mostrar situaciones y conceptos de bases de datos. Para obtener más información acerca de esta base de datos, vea Ejemplos y bases de datos de ejemplo.

Esta sección contiene los siguientes ejemplos:

  • A. Realizar una copia de seguridad de la base de datos completa
  • B. Realizar una 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 de archivos diferencial de los grupos de archivos secundarios
  • E. Crear y realizar una copia de seguridad en un conjunto de medios reflejado de una sola familia
  • F. Crear y realizar una copia de seguridad en un conjunto de medios reflejado de varias familias
  • G. Realizar una copia de seguridad en un conjunto de medios existente

[!NOTA] Los temas Cómo... de copia de seguridad contienen más ejemplos. Para obtener más información, vea Temas de procedimientos de copia de seguridad y restauración (Transact-SQL).

A. Realizar una copia de seguridad de la base de datos completa

En el ejemplo siguiente se realiza una copia de seguridad de la base de datos AdventureWorks en un archivo de disco.

BACKUP DATABASE AdventureWorks 
 TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
   WITH FORMAT;
GO

B. Realizar una 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 AdventureWorks, que usa de forma predeterminada un modelo de recuperación simple. Para admitir las copias de seguridad de registros, la base de datos AdventureWorks se ha modificado para usar el modelo de recuperación completa.

A continuación, 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 AdventureWorks
   SET RECOVERY FULL;
GO
-- Create AdvWorksData and AdvWorksLog logical backup devices. 
USE master
GO
EXEC sp_addumpdevice 'disk', 'AdvWorksData', 
'Z:\SQLServerBackups\AdvWorksData.bak';
GO
EXEC sp_addumpdevice 'disk', 'AdvWorksLog', 
'Z:\SQLServerBackups\AdvWorksLog.bak';
GO

-- Back up the full AdventureWorks database.
BACKUP DATABASE AdventureWorks TO AdvWorksData;
GO
-- Back up the AdventureWorks log.
BACKUP LOG AdventureWorks
   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 de archivos diferencial 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. Crear y realizar una copia de seguridad en un conjunto de medios reflejado 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 AdventureWorks en ellos.

BACKUP DATABASE AdventureWorks
TO TAPE = '\\.\tape0'
MIRROR TO TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2'
MIRROR TO TAPE = '\\.\tape3'
WITH
   FORMAT,
   MEDIANAME = 'AdventureWorksSet0'

F. Crear y realizar una copia de seguridad en un conjunto de medios reflejado de varias familias

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 AdventureWorks en ambos reflejos.

BACKUP DATABASE AdventureWorks
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3'
WITH
   FORMAT,
   MEDIANAME = 'AdventureWorksSet1'

G. Realizar una copia de seguridad en un conjunto de medios existente

En el siguiente ejemplo se anexa un conjunto de copia de seguridad al conjunto de medios creado en el ejemplo anterior.

BACKUP LOG AdventureWorks
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.

[Inicio de los ejemplos]

Vea también

Referencia

ALTER DATABASE (Transact-SQL)
DBCC SQLPERF (Transact-SQL)
RESTORE (Transact-SQL)
RESTORE FILELISTONLY (Transact-SQL)
RESTORE HEADERONLY (Transact-SQL)
RESTORE LABELONLY (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)
sp_addumpdevice (Transact-SQL)
sp_configure (Transact-SQL)
sp_helpfile (Transact-SQL)
sp_helpfilegroup (Transact-SQL)

Otros recursos

Crear copias de seguridad completas y diferenciales de una base de datos de SQL Server
Trabajar con medios de copia de seguridad en SQL Server
Conjuntos de medios, familias de medios y conjuntos de copias de seguridad
Trabajar con copias de seguridad del registro de transacciones

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

17 de julio de 2006

Contenido modificado:
  • Se han reorganizado las secciones "Sintaxis" y "Argumentos" para agrupar opciones relacionadas.
  • Se ha ampliado la descripción de la opción MIRROR TO.
  • Se ha revisado la sección "Tipos de copia de seguridad".
  • Se ha agregado la sección "Soporte de compatibilidad".
  • Se ha revisado la sección "Trabajar con un conjunto de medios reflejado".
  • Se han agregado ejemplos de una copia de seguridad de archivos completa y diferencial.

14 de abril de 2006

Contenido nuevo:
  • Se han agregado las opciones BUFFERCOUNT y MAXTRANSFERSIZE a las secciones Sintaxis y Argumentos.
Contenido modificado:
  • Se han incluido los tamaños de bloque admitidos y se ha actualizado la nota acerca del rendimiento en la descripción de BLOCKSIZE.
  • Se han actualizado las descripciones de las opciones {REWIND | NOREWIND} y {UNLOAD | NOUNLOAD}.

5 de diciembre de 2005

Contenido modificado:
  • Se ha aclarado la descripción de las opciones NO_LOG y TRUNCATE_ONLY.