Restauraciones de base de datos completas (modelo de recuperación simple)Complete Database Restores (Simple Recovery Model)

ESTE TEMA SE APLICA A: síSQL Server (a partir de 2016)noBase de datos SQL de AzurenoAlmacenamiento de datos SQL de Azure noAlmacenamiento de datos paralelosTHIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

El objetivo de una restauración completa de la base de datos es restaurar toda la base de datos.In a complete database restore, the goal is to restore the whole database. Durante el proceso de restauración, la base de datos completa se encuentra sin conexión.The whole database is offline for the duration of the restore. 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.Before any part of the database can come online, all data is recovered to a consistent point in which all parts of the database are at the same point in time and no uncommitted transactions exist.

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.Under the simple recovery model, the database cannot be restored to a specific point in time within a specific backup.

Importante

Se recomienda no adjuntar ni restaurar bases de datos de orígenes desconocidos o que no sean de confianza.We recommend that you do not attach or restore databases from unknown or untrusted sources. Estas bases de datos pueden contener código malintencionado que podría ejecutar código Transact-SQLTransact-SQL inesperado o provocar errores debido a la modificación del esquema o de la estructura de la base de datos física.These databases could contain malicious code that might execute unintended Transact-SQLTransact-SQL code or cause errors by modifying the schema or the physical database structure. 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.Before you use a database from an unknown or untrusted source, run DBCC CHECKDB on the database on a nonproduction server and also examine the code, such as stored procedures or other user-defined code, in the database.

En este tema:In this Topic:

Nota

Para obtener más información sobre la compatibilidad con las copias de seguridad de versiones anteriores de SQL ServerSQL Server, vea la sección "Soporte de compatibilidad" de RESTORE (Transact-SQL).For information about support for backups from earlier versions of SQL ServerSQL Server, see the "Compatibility Support" section of RESTORE (Transact-SQL).

Información general de la restauración de la base de datos en el modelo de recuperación simple Overview of Database Restore Under the Simple Recovery Model

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.A full database restore under the simple recovery model involves one or two RESTORE statements, depending on whether you want to restore a differential database backup. 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.If you are using only a full database backup, just restore the most recent backup, as shown in the following illustration.

Restaurar solamente una copia de seguridad completa de la base de datosRestoring only a full database backup

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.If you are also using a differential database backup, restore the most recent full database backup without recovering the database, and then restore the most recent differential database backup and recover the database. En la siguiente ilustración se muestra este proceso.The following illustration shows this process.

Restaurar copias de seguridad de bases de datos completas y diferencialesRestoring full and differential database backups

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.If you plan to restore a database backup onto a different server instance, see Copy Databases with Backup and Restore.

Sintaxis RESTORE de Transact-SQL básica Basic Transact-SQL RESTORE Syntax

La sintaxis Transact-SQLTransact-SQLRESTORE básica para restaurar una copia de seguridad de base de datos completa es:The basic Transact-SQLTransact-SQLRESTORE syntax for restoring a full database backup is:

RESTORE DATABASE database_name FROM backup_device [ WITH NORECOVERY ]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.Use WITH NORECOVERY if you plan to also restore a differential database backup.

La sintaxis RESTORE básica para restaurar una copia de seguridad de la base de datos es:The basic RESTORE syntax for restoring a database backup is:

RESTORE DATABASE database_name FROM backup_device WITH RECOVERYRESTORE DATABASE database_name FROM backup_device WITH RECOVERY

Ejemplo (Transact-SQL) Example (Transact-SQL)

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 AdventureWorks2012AdventureWorks2012 .The following example first shows how to use the BACKUP statement to create a full database backup and a differential database backup of the AdventureWorks2012AdventureWorks2012 database. A continuación, se restauran estas copias de seguridad una después de la otra.The example then restores these backups in sequence. La base de datos se restaura a su estado en el momento en que finalizó la copia de seguridad diferencial.The database is restored to its state as of the time that the differential database backup finished.

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.The example shows the critical options in a restore sequence for the complete database restore scenario. 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.A restore sequence consists of one or more restore operations that move data through one or more of the phases of restore. La sintaxis y los detalles no pertinentes para este propósito se omiten.Syntax and details that are not relevant to this purpose are omitted. 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.When you recover a database, we recommend explicitly specifying the RECOVERY option for clarity, even though it is the default.

Nota

En el ejemplo se comienza con una instrucción ALTER DATABASE que establece el modelo de recuperación en SIMPLE.The example starts with an ALTER DATABASE statement that sets the recovery model to 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  

Para restaurar una copia de seguridad completa de la base de datosTo restore a full database backup

Vea tambiénSee Also

RESTORE (Transact-SQL) RESTORE (Transact-SQL)
BACKUP (Transact-SQL) BACKUP (Transact-SQL)
sp_addumpdevice (Transact-SQL) sp_addumpdevice (Transact-SQL)
Copias de seguridad completas de bases de datos (SQL Server) Full Database Backups (SQL Server)
Copias de seguridad diferenciales (SQL Server) Differential Backups (SQL Server)
Información general de copia de seguridad (SQL Server) Backup Overview (SQL Server)
Información general sobre restauración y recuperación (SQL Server) Restore and Recovery Overview (SQL Server)