Restauración en línea (SQL Server)Online Restore (SQL Server)

SE APLICA A: síSQL Server noAzure SQL Database noAzure SQL Data Warehouse noAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

La restauración en línea solo se admite en la edición Enterprise de SQL ServerSQL Server .Online restore is supported only on SQL ServerSQL Server Enterprise edition. En esta versión, la restauración de un archivo, una página o por etapas es en línea de manera predeterminada.In this edition, a file, page, or piecemeal restore is online by default. Este tema es pertinente para las bases de datos que incluyen varios archivos o grupos de archivos y, en el modelo de recuperación simple, solo para grupos de archivos de solo lectura.This topic is relevant for databases that contain multiple files or filegroups (and, under the simple recovery model, only for read-only filegroups).

La restauración de datos mientras la base de datos está en línea se denomina restauración en línea.Restoring data while the database is online is called an online restore. Se considera que una base de datos está en línea siempre que el grupo de archivos principal esté en línea, aunque alguno de los grupos de archivos secundarios esté sin conexión.A database is considered to be online whenever the primary filegroup is online, even if one or more of its secondary filegroups are offline. En todos los modelos de recuperación se puede restaurar un archivo sin conexión mientras la base de datos está en línea.Under any recovery model, you can restore a file that is offline while the database is online. En el modelo de recuperación completa, también se pueden restaurar páginas mientras la base de datos está en línea.Under the full recovery model, you can also restore pages while the database is online.

Nota

La restauración en línea tiene lugar automáticamente en SQL ServerSQL Server Enterprise y no requiere ninguna acción por parte del usuario.Online restore occurs automatically on SQL ServerSQL Server Enterprise and requires no user action. Si no desea utilizar la restauración en línea, puede dejar una base de datos sin conexión antes de iniciar la restauración.If you do not want to use online restore, you can take a database offline before you start a restore. Para obtener más información, vea Dejar sin conexión una base de datos o un archivomás adelante en este tema.For more information, see Taking a Database or File Offline, later in this topic.

Durante una operación de restauración de archivos en línea, los archivos que se estén restaurando y su grupo de archivos están sin conexión.During an online file restore, any file being restored and its filegroup are offline. Si algunos de dichos archivos está en línea cuando se inicia una restauración en línea, la primera instrucción de la restauración deja sin conexión el grupo de archivos al que pertenece el archivo.If any of these files is online when an online restore starts, the first restore statement takes the filegroup of the file offline. Por el contrario, durante una restauración en línea de una página, solo esa página está sin conexión.In contrast, during an online page restore, only the page is offline.

El escenario de restauración en línea implica los siguientes pasos básicos:Every online restore scenario involves the following basic steps:

  1. Restaure los datos.Restore the data.

  2. Restaure el registro utilizando WITH RECOVERY para la última restauración del registro.Restore the log by using WITH RECOVERY for the last log restore. Así, se ponen en línea los datos restaurados.This brings the restored data online.

Le escuchamos: Si encuentra algo obsoleto o incorrecto en este artículo, como un paso o un ejemplo de código, indíquenoslo.We are listening: If you find something outdated or incorrect in this article, such as a step or a code example, please tell us. Puede hacer clic en el botón Esta página situado en la sección Comentarios en la parte inferior de esta página.You can click the This page button in the Feedback section at the bottom of this page. Leemos todos los elementos de comentarios sobre SQL, normalmente el día siguiente.We read every item of feedback about SQL, typically the next day. Gracias.Thanks.

A veces, una transacción sin confirmar no se puede revertir porque los datos necesarios para la operación de reversión están sin conexión durante el inicio.Occasionally, an uncommitted transaction cannot be rolled back because the data that is required by rollback is offline during startup. En ese caso, la transacción se difiere.In this case, the transaction is deferred. Para obtener más información, vea Transacciones diferidas (SQL Server).For more information, see Deferred Transactions (SQL Server).

Nota

Si la base de datos está usando en ese momento el modelo de recuperación optimizado para cargas masivas de registros, es recomendable cambiar al modelo de recuperación completa antes de iniciar la restauración en línea.If the database is currently using the bulk-logged recovery model, we recommend that you switch to the full recovery model before you start an online restore. Para obtener más información, vea Ver o cambiar el modelo de recuperación de una base de datos (SQL Server).For more information, see View or Change the Recovery Model of a Database (SQL Server).

Importante

Si las copias de seguridad se realizaron con varios dispositivos conectados al servidor, será necesario que los mismos dispositivos estén disponibles durante una restauración en línea.If the backups were taken with multiple devices that were attached to the server, the same number of devices must be available during an online restore.

Precaución

Al utilizar las copias de seguridad de instantánea, no se puede realizar un Online Restore.When using snapshot backups, you cannot perform an Online Restore. Para obtener más información sobre Copias de seguridad de instantánea, vea Copias de seguridad de instantánea de archivos para archivos de base de datos de Azure.For more information about Snapshot Backup, see File-Snapshot Backups for Database Files in Azure.

Copias de seguridad de registros para una restauración en líneaLog Backups for Online Restore

En el caso de una restauración en línea, el punto de recuperación es el punto donde se dejaron sin conexión los datos que se van a restaurar o se convirtieron en datos de solo lectura por última vez.In an online restore, the recovery point is the point when the data being restored was taken offline or made read-only for the last time. Las copias de seguridad del registro de transacciones que llevan a este punto de recuperación y lo incluyen deben estar todas disponibles.The transaction log backups leading up to and including this recovery point must all be available. Normalmente, es necesario hacer una copia de seguridad de registros después de ese punto para cubrir el punto de recuperación del archivo.Generally, a log backup is required after that point to cover the recovery point for the file. La única excepción tiene lugar durante una restauración en línea de datos de solo lectura a partir de una copia de seguridad de datos que se realizó después de que los datos pasaran a ser de solo lectura.The only exception is during an online restore of read-only data from a data backup that was taken after the data became read-only. En ese caso, no es necesario disponer de una copia de seguridad de registros.In this case, you do not have to have a log backup.

En general, puede realizar copias de seguridad del registro de transacciones mientras la base de datos esté en línea, incluso después de iniciar la secuencia de restauración.Generally, you may take transaction log backups while the database is online, even after the start of the restore sequence. El momento oportuno para la realización de la última copia de seguridad de registros depende de las propiedades del archivo que se va a restaurar:The timing of the last log backup depends on the properties of the file being restored:

  • En el caso de un archivo en línea de solo lectura, puede realizar la última copia de seguridad de registros necesaria para la recuperación antes o durante la primera secuencia de restauración.For an online read-only file, you can take the last log backup that is required for recovery before or during the first restore sequence. Un grupo de archivos de solo lectura no necesita copias de seguridad de registros si se realizó una copia de seguridad de datos o diferencial después de haber configurado el grupo de archivos como de solo lectura.A read-only filegroup may not require log backups if a data or differential backup was taken after the filegroup became read-only.

    Nota

    La información anterior se puede aplicar también a todos los archivos sin conexión.The preceding information also applies to every offline file.

  • Un caso especial es un archivo de lectura/escritura que estaba en línea cuando se emitió la primera instrucción de restauración y que, a continuación, dicha instrucción dejó sin conexión automáticamente.A special case exists for a read/write file that was online when the first restore statement was issued and that was then automatically taken offline by that restore statement. En este caso, debe realizar una copia de seguridad de registros durante la primera secuencia de restauración (secuencia de una o varias instrucciones RESTORE que restauran, ponen al día y recuperan los datos).In this case, you must take a log backup during the first restore sequence (the sequence of one or more RESTORE statements that restore, roll forward, and recover data). Por lo general, esta copia de seguridad de registros debe tener lugar después de que se hayan restaurado todas las copias de seguridad completas y antes de recuperar los datos.Generally, this log backup must occur after you restore all the full backups and before you recover the data. No obstante, si hay varias copias de seguridad de archivos para un grupo de archivos concreto, el punto mínimo de copia de seguridad de registros es después de que el grupo de archivos quede sin conexión.However, if there are multiple file backups for a specific filegroup, the minimal point of log backup is the time after the filegroup is offline. Esta copia de seguridad de registros posterior a la restauración de datos capta el punto en el que se dejó el archivo sin conexiónThis post-data-restore log backup captures the point at which the file was taken offline. y es necesaria porque Motor de base de datos de SQL ServerSQL Server Database Engine no puede utilizar un registro en línea para una restauración en línea.The post-data-restore log backup is necessary because the Motor de base de datos de SQL ServerSQL Server Database Engine cannot use online log for an online restore.

    Nota

    Como alternativa, puede dejar el archivo sin conexión manualmente antes de la secuencia de restauración.Alternatively, you can manually take the file offline before the restore sequence. Para obtener más información, vea "Dejar sin conexión una base de datos o un archivo" más adelante en este tema.For more information, see "Taking a Database or File Offline" later in this topic.

Dejar sin conexión una base de datos o un archivoTaking a Database or File Offline

Si no desea utilizar la restauración en línea, puede dejar sin conexión la base de datos antes de iniciar la secuencia de restauración; para ello, puede usar uno de los métodos siguientes:If you do not want to use online restore, you can take the database offline before you start the restore sequence by using one of the following methods:

  • En todos los modelos de recuperación puede dejar sin conexión la base de datos con la siguiente instrucción ALTER DATABASE :Under any recovery model, you can take the database offline by using the following ALTER DATABASE statement:

    ALTER DATABASE nombre_base_de_datos SET OFFLINEALTER DATABASE database_name SET OFFLINE

  • Si lo desea, en el modelo de recuperación completa, puede forzar que la restauración de un archivo o una página sea sin conexión; para ello, use la siguiente instrucción BACKUP LOG la base de datos se pone en el estado de restauración:Alternatively, under the full recovery model, you can force a file or page restore to be offline, by using the following BACKUP LOG statement put the database in to the restoring state:

    BACKUP LOG nombre_base_de_datos WITH NORECOVERY.BACKUP LOG database_name WITH NORECOVERY.

Siempre que la base de datos permanezca sin conexión, todas las restauraciones serán sin conexión.As long as a database remains offline, all restores are offline restores.

EjemplosExamples

Nota

La sintaxis de un flujo de restauración en línea es la misma que la de un flujo de restauración sin conexión.The syntax for an online restore sequence is the same as for an offline restore sequence.

Tareas relacionadasRelated Tasks

Consulte tambiénSee Also

Restauraciones de archivos (modelo de recuperación completa) File Restores (Full Recovery Model)
Restauraciones de archivos (modelo de recuperación simple) File Restores (Simple Recovery Model)
Restaurar páginas (SQL Server) Restore Pages (SQL Server)
Restauraciones por etapas (SQL Server) Piecemeal Restores (SQL Server)
Información general sobre restauración y recuperación (SQL Server)Restore and Recovery Overview (SQL Server)