Compartir a través de


Restauraciones de base de datos completas (modelo de recuperación simple)

El objetivo de una restauración completa de la base de datos es restaurar toda la base de datos. 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.

Importante

Se recomienda no adjuntar ni restaurar bases de datos de orígenes desconocidos o que no sean de confianza. Estas bases de datos podrían contener código malintencionado que podría ejecutar código Transact-SQL no deseado o provocar errores modificando el esquema o la estructura de la base de datos física. Para usar una base de datos desde un origen desconocido o que no sea de confianza, ejecute DBCC CHECKDB en la base de datos de un servidor que no sea de producción y examine también el código, como procedimientos almacenados u otro código definido por el usuario, en la base de datos.

Nota:

Para obtener más información sobre la compatibilidad con las copias de seguridad de versiones anteriores de SQL Server, vea la sección "Soporte de compatibilidad" de RESTORE (Transact-SQL).

Información general de la restauración de la base de datos en el modelo de recuperación simple

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 desea restaurar una copia de seguridad diferencial de la base de datos. Si solo usa copias de seguridad completas de la base de datos, restaure solo la copia de seguridad más reciente, como se muestra en la siguiente ilustración.

Restaurar solo 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.

Restauración de copias de seguridad completas y diferenciales de bases de datos

Nota

Si planea restaurar una copia de seguridad de la base de datos en una instancia de servidor distinta, vea Copiar bases de datos con Copias de seguridad y restauración.

Sintaxis RESTORE de Transact-SQL básica

La sintaxis básicade Transact-SQL RESTORE para restaurar una copia de seguridad completa 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.

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 RECOVERY

Ejemplo (Transact-SQL)

En el ejemplo siguiente se muestra primero cómo usar la instrucción BACKUP para crear una copia de seguridad completa de la base de datos y una copia de seguridad diferencial de la base de datos AdventureWorks2012 . A continuación, se restauran estas copias de seguridad una después de la otra. La base de datos se restaura a su estado en el momento en que finalizó la copia de seguridad diferencial.

En el 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 consta de dos o más operaciones de restauración que mueven datos en una o varias fases de restauración. La sintaxis y los detalles no pertinentes para este propósito se omiten. 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.

Nota:

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

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

Related Tasks

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

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

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

Consulte también

RESTORE (Transact-SQL)
BACKUP (Transact-SQL)
sp_addumpdevice (Transact-SQL)
Copias de seguridad completas de bases de datos (SQL Server)
Copias de seguridad diferenciales (SQL Server)
Backup Overview (SQL Server)
Información general sobre restauración y recuperación (SQL Server)