Realizar una restauración de base de datos completa (modelo de recuperación simple)

El objetivo de una restauración completa de la base de datos es restaurar la base de datos completa. Durante el proceso de restauración, la base de datos completa se encuentra sin conexión. Antes de que ninguna parte de la base de datos esté en línea, se recuperan todos los datos a un punto coherente en el que todas las partes de la base de datos se encuentran en el mismo momento y en el que no existe ninguna transacción sin confirmar.

En el modelo de recuperación simple, no se puede restaurar la base de datos a un momento concreto de una copia de seguridad específica.

Restaurar una base de datos completa

  1. Una restauración completa de base de datos con el modelo de recuperación simple implica una o dos instrucciones RESTORE, en función de si se debe restaurar o no una copia de seguridad diferencial de la base de datos.

Si sólo usa copias de seguridad completas de la base de datos, restaure sólo la copia de seguridad más reciente, como se muestra en la siguiente ilustración.

Restaurar solamente una copia de seguridad completa de la base de datos

Si también usa una copia de seguridad diferencial de la base de datos, restaure la copia de seguridad completa más reciente de la base de datos sin recuperar la base de datos y, a continuación, restaure la copia de seguridad diferencial más reciente de la base de datos y recupere la base de datos. En la siguiente ilustración se muestra este proceso.

Restaurar copias de seguridad de bases de datos completas y diferenciales

Al restaurar completamente una base de datos, debe utilizar una única secuencia de restauración. En el siguiente ejemplo se muestran las opciones críticas de una secuencia de restauración en un escenario de restauración de base de datos completa. Una secuencia de restauración está formada por una o más operaciones de restauración que mueven los datos mediante una o varias fases de restauración. La sintaxis y los detalles no relevantes para este propósito se omiten.

La base de datos se restaura a su estado de copia de seguridad completa de base de datos. Al recuperar una base de datos, se recomienda especificar explícitamente la opción RECOVERY por motivos de claridad, aunque es la opción predeterminada.

Ejemplo

En el siguiente ejemplo se muestra primero cómo usar la instrucción BACKUP para crear una copia de seguridad completa y diferencial de la base de datos AdventureWorks2008R2. A continuación, se restauran estas copias de seguridad una después de la otra.

Nota

En el ejemplo se comienza con una instrucción ALTER DATABASE que establece el modelo de recuperación como SIMPLE.

USE master;
--Make sure the database is using the simple recovery model.
ALTER DATABASE AdventureWorks2008R2 SET RECOVERY SIMPLE;
GO
-- Back up the full AdventureWorks2008R2 database.
BACKUP DATABASE AdventureWorks2008R2 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.bak' 
  WITH FORMAT;
GO
--Create a differential database backup.
BACKUP DATABASE AdventureWorks2008R2 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.bak'
   WITH DIFFERENTIAL;
GO
--Restore the full database backup (from backup set 1).
RESTORE DATABASE AdventureWorks2008R2 FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.bak' 
   WITH FILE=1, NORECOVERY;
--Restore the differential backup (from backup set 2).
RESTORE DATABASE AdventureWorks2008R2 FROM DISK = 'Z:\SQLServerBackups\AdventureWorks2008R2.bak' 
   WITH FILE=2, RECOVERY;
GO

Para restaurar una copia de seguridad completa de la base de datos

La sintaxis RESTORE básica para restaurar una copia de seguridad de la base de datos es:

RESTORE DATABASE database_name FROM backup_device [ WITH NORECOVERY ]

Nota

Use WITH NORECOVERY si también desea restaurar una copia de seguridad diferencial de la base de datos.

Nota importanteImportante

Para restaurar una copia de seguridad de la base de datos en otra instancia de servidor, vea Copiar bases de datos con Copia de seguridad y restauración y Administrar los metadatos cuando una base de datos pasa a estar disponible en otra instancia de servidor.

Para restaurar una copia de seguridad diferencial de la base de datos

La sintaxis RESTORE básica para restaurar una copia de seguridad diferencial de la base de datos es:

RESTORE DATABASE database_name FROM backup_device WITH RECOVERY

Para restaurar una copia de seguridad mediante los objetos de administración de SQL Server (SMO)

Compatibilidad con copias de seguridad de versiones anteriores de SQL Server

En SQL Server 2008, puede restaurar una copia de seguridad de base de datos creada con SQL Server 2000, SQL Server 2005 o SQL Server 2008. Sin embargo, las copias de seguridad las bases de datos maestra, de modelo y msdb creadas mediante SQL Server 2000 o SQL Server 2005 no pueden restaurarse con SQL Server 2008. Asimismo, las copias de seguridad de SQL Server 2008 no se pueden restaurar con versiones anteriores de SQL Server.

SQL Server 2008 utiliza una ruta de acceso predeterminada distinta a la de las versiones anteriores. Por lo tanto, para restaurar una base de datos creada en la ubicación predeterminada de las copias de seguridad de SQL Server 2000 o SQL Server 2005, es preciso utilizar la opción MOVE. Para obtener información acerca de la nueva ruta de acceso predeterminada, vea Ubicaciones de archivos para las instancias predeterminadas y con nombre de SQL Server.

Nota

Para obtener información acerca de cómo actualizar una base de datos creada mediante SQL Server 7.0 o versiones anteriores a SQL Server 2005, vea Copiar bases de datos de SQL Server 7.0 o anterior.