Cómo crear una copia de seguridad de la base de datos completa (Transact-SQL)

En este tema se explica cómo crear una copia de seguridad completa de base de datos con la instrucción BACKUP DATABASE.

Para crear una copia de seguridad de base de datos completa

  1. Ejecute la instrucción BACKUP DATABASE para crear la copia de seguridad de base de datos completa, especificando:

    • El nombre de la base de datos de la que se va a realizar una copia de seguridad.

    • El dispositivo de copia de seguridad en el que se escribe la copia de seguridad de base de datos completa.

    La sintaxis básica de Transact-SQL para crear una copia de seguridad de base de datos completa es:

    BACKUP DATABASE database

    TO backup_device [ ,...n ]

    [ WITH with_options [ ,...o ] ] ;

    Opción

    Descripción

    database

    Es la base de datos cuya copia de seguridad se desea hacer.

    backup_device [ ,...n ]

    Especifica una lista de 1 a 64 dispositivos de copia de seguridad que se pueden utilizar en la operación de copia de seguridad. Puede especificar un dispositivo físico de copia de seguridad o puede especificar un dispositivo de copia de seguridad lógico correspondiente, si ya se definió. Para especificar un dispositivo de copia de seguridad físico, utilice las opciones DISK o TAPE:

    { DISK | TAPE } =physical_backup_device_name

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

    WITH with_options [ ,...o ]

    Opcionalmente, especifica una o más opciones adicionales, o. Para obtener más información acerca de algunas de las opciones básicas con opciones, vea el paso 2.

  2. Opcionalmente, especifique una o varias opciones de WITH. A continuación se describen algunas de las opciones de WITH básicas. Para obtener información acerca de las opciones de WITH, vea BACKUP (Transact-SQL).

    • Opciones de WITH básicas del conjunto de copia de seguridad:

      • { COMPRESSION | NO_COMPRESSION }
        En SQL Server 2008 Enterprise y versiones posteriores únicamente, especifica si la compresión de copia de seguridad se realiza en esta copia de seguridad, lo que invalida la configuración predeterminada de nivel de servidor.

        Nota

        La configuración predeterminada de nivel de servidor se establece con la opción de compresión de copia de seguridad predeterminada.

      • DESCRIPTION = { 'text' | **@**text_variable }
        Especifica el texto sin formato que describe el conjunto de copia de seguridad. La cadena puede tener un máximo de 255 caracteres.

      • NAME = { backup_set_name | **@**backup_set_name_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.

    • Opciones de WITH básicas del conjunto de copia de seguridad:

      De forma predeterminada, BACKUP DATABASE anexa la copia de seguridad a un conjunto de medios existente, conservando los conjuntos de copia de seguridad existentes. Para especificar esto explícitamente, utilice la opción NOINIT. Para obtener más información, vea Anexar a conjuntos de copia de seguridad existentes.

      Opcionalmente, para dar formato a los medios de copia de seguridad, utilice la opción FORMAT:

      • FORMAT [ , MEDIANAME**=** { media_name | **@**media_name_variable } ] [ , MEDIADESCRIPTION = { text | **@**text_variable } ]
        Utilice la cláusula FORMAT cuando emplee los medios por primera vez o cuando desee sobrescribir todos los datos existentes. De manera opcional, puede asignar a los nuevos medios un nombre y una descripción.

        Nota importanteImportante

        Tenga mucho cuidado cuando utilice la cláusula FORMAT de la instrucción BACKUP, ya que destruye cualquier copia de seguridad existente en el medio de copia de seguridad.

Ejemplo

A. Realizar la copia de seguridad en un dispositivo de disco

En este ejemplo se realiza una copia de seguridad completa de la base de datos AdventureWorks2008R2 en el disco y se utiliza FORMAT para crear un conjunto de medios nuevo.

USE AdventureWorks2008R2;
GO
BACKUP DATABASE AdventureWorks2008R2
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.Bak'
   WITH FORMAT,
      MEDIANAME = 'Z_SQLServerBackups',
      NAME = 'Full Backup of AdventureWorks2008R2';
GO

B. Realizar la copia de seguridad en un dispositivo de cinta

En este ejemplo, se realiza una copia de seguridad en cinta de la base de datos AdventureWorks2008R2 completa, y se agrega la copia a las anteriores.

USE AdventureWorks2008R2;
GO
BACKUP DATABASE AdventureWorks2008R2
   TO TAPE = '\\.\Tape0'
   WITH NOINIT,
      NAME = 'Full Backup of AdventureWorks2008R2';
GO

C. Realizar la copia de seguridad en un dispositivo de cinta lógico

En este ejemplo, se crea un dispositivo de copia de seguridad lógico para una unidad de cinta. A continuación, se realiza una copia de seguridad completa de la base de datos AdventureWorks2008R2 en dicho dispositivo.

-- Create a logical backup device, 
-- AdventureWorks2008R2_Bak_Tape, for tape device \\.\tape0.
USE master;
GO
EXEC sp_addumpdevice 'tape', 'AdventureWorks2008R2_Bak_Tape', '\\.\tape0'; 
USE AdventureWorks2008R2;
GO
BACKUP DATABASE AdventureWorks2008R2
   TO AdventureWorks2008R2_Bak_Tape
   WITH FORMAT,
      MEDIANAME = 'AdventureWorks2008R2_Bak_Tape',
      MEDIADESCRIPTION = '\\.\tape0', 
      NAME = 'Full Backup of AdventureWorks2008R2';
GO