Restauraciones por etapas (SQL Server)Piecemeal Restores (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

Este tema se aplica a las bases de datos de la edición Enterprise de SQL ServerSQL Server (restauración con conexión) o de la edición Estándar (restauración sin conexión) que incluyan varios archivos o grupos de archivos y, en el modelo simple, únicamente para grupos de archivos de solo lectura.This topic is relevant for databases in the Enterprise edition of SQL ServerSQL Server (online restore) or Standard edition (offline restore) that contain multiple files or filegroups; and, under the simple model, only for read-only filegroups.

Para obtener información sobre la restauración por etapas y las tablas optimizadas para memoria, vea Restauración por etapas de bases de datos con tablas optimizadas para memoria.For information about piecemeal restore and memory-optimized tables, see Piecemeal Restore of Databases With Memory-Optimized Tables.

Larestauración por etapas , permite la restauración y recuperación en fases de las bases de datos que contienen varios grupos de archivos.Piecemeal restore allows databases that contain multiple filegroups to be restored and recovered in stages. Este tipo de restauración implica una serie de secuencias de restauración, empezando por el grupo de archivos principal y, en algunos casos, uno o varios grupos de archivos secundarios.Piecemeal restore involves a series of restore sequences, starting with the primary filegroup and, in some cases, one or more secondary filegroups. La restauración por etapas mantiene comprobaciones para garantizar que, al final, la base de datos será coherente.Piecemeal restore maintains checks to ensure that the database will be consistent in the end. Una vez completada la secuencia de restauración, los archivos recuperados (si son válidos y coherentes con la base de datos) pueden ponerse en línea directamente.After the restore sequence is completed, recovered files, if they are valid and consistent with the database, can be brought online directly.

La restauración por etapas funciona con todos los modelos de recuperación, pero su flexibilidad es mayor para los modelos de recuperación optimizado para cargas masivas de registros y completo que para el modelo de recuperación simple.Piecemeal restore works with all recovery models, but is more flexible for the full and bulk-logged models than for the simple model.

Las restauraciones por etapas empiezan con una secuencia de restauración inicial que se denomina secuencia de restauración parcial.Every piecemeal restore starts with an initial restore sequence called the partial-restore sequence. Como mínimo, la secuencia de restauración parcial restaura y recupera el grupo de archivos principal y, con el modelo de recuperación simple, todos los grupos de archivos de lectura/escritura.Minimally, the partial-restore sequence restores and recovers the primary filegroup and, under the simple recovery model, all read/write filegroups. Durante la secuencia de restauración por etapas, toda la base de datos debe ponerse en modo sin conexión.During the piecemeal-restore sequence, the whole database must go offline. Después de este momento, la base de datos estará en línea y los grupos de archivos restaurados estarán disponibles.Thereafter, the database is online and restored filegroups are available. Sin embargo, los grupos de archivos no restaurados permanecerán sin conexión y no estarán disponibles.However, any unrestored filegroups remain offline and are not accessible. No obstante, los grupos de archivos sin conexión se pueden restaurar y poner en línea más adelante mediante una restauración de archivos.Any offline filegroups, however, can be restored and brought online later by a file restore.

Independientemente del modelo de recuperación utilizado por la base de datos, la secuencia de restauración parcial se inicia con una instrucción RESTORE DATABASE que restaura una copia de seguridad completa y especifica la opción PARTIAL.Regardless of the recovery model that is used by the database, the partial-restore sequence starts with a RESTORE DATABASE statement that restores a full backup and specifies the PARTIAL option. La opción PARTIAL siempre inicia una nueva restauración por etapas; por lo tanto, se debe especificar PARTIAL únicamente una vez en la instrucción inicial de la secuencia de restauración parcial.The PARTIAL option always starts a new piecemeal restore; therefore, you must specify PARTIAL only one time in the initial statement of the partial-restore sequence. Cuando la secuencia de restauración parcial finaliza y la base de datos está en línea, a los archivos restantes se les asigna el estado "pendiente de recuperación" porque su recuperación se ha pospuesto.When the partial restore sequence finishes and the database is brought online, the state of the remaining files becomes "recovery pending" because their recovery has been postponed.

Posteriormente, una restauración por etapas suele incluir una o varias secuencias de restauración, que se denominan secuencias de restauración de grupos de archivos.Subsequently, a piecemeal restore typically includes one or more restore sequences, which are called filegroup-restore sequences. Se puede retrasar la realización de una secuencia de restauración de grupos de archivos concreta el tiempo que desee.You can wait to perform a specific filegroup-restore sequence for as long as you want. Estas secuencias restauran y recuperan uno o varios grupos de archivos sin conexión a un punto coherente con la base de datos.Each filegroup-restore sequence restores and recovers one or more offline filegroups to a point consistent with the database. La planeación y el número de secuencias de restauración de grupos de archivos depende del objetivo de recuperación, del número de grupos de archivos sin conexión que se desea restaurar y de cuántos de estos se restaurarán por secuencia de restauración de grupos de archivos.The timing and number of filegroup-restore sequences depends on your recovery goal, the number of offline filegroups you want to restore, and on how many of them you restore per filegroup-restore sequence.

Los requisitos concretos para realizar una restauración por etapas dependen del modelo de recuperación de la base de datos.The exact requirements for performing a piecemeal restore depend on the recovery model of the database. Para obtener información, vea " Restauración por etapas con el modelo de recuperación simple" y "Restauración por etapas con el modelo de recuperación completa", más adelante en este tema.For more information, see "Piecemeal Restore Under the Simple Recovery Model" and "Piecemeal Restore Under the Full Recovery Model," later in this topic.

Escenarios de restauración por etapasPiecemeal Restore Scenarios

Todas las ediciones de SQL ServerSQL Server admiten restauraciones por etapas sin conexión.All editions of SQL ServerSQL Server support offline piecemeal restores. En la edición Enterprise, una restauración por etapas puede realizarse en línea o sin conexión.In the Enterprise edition, a piecemeal restore can be either online or offline. Las implicaciones de las restauraciones por etapas en línea y sin conexión son las siguientes:The implications of offline and online piecemeal restores are as follows:

  • Escenario de restauración por etapas sin conexiónOffline piecemeal restore scenario

    En una restauración por etapas sin conexión, la base de datos está en línea después de la secuencia de restauración parcial.In an offline piecemeal restore, the database is online after the partial-restore sequence. Los grupos de archivos que aún no se han restaurado permanecen sin conexión, pero pueden restaurarse a medida que sean necesarios después de dejar la base de datos sin conexión.Filegroups that have not yet been restored remain offline, but they can be restored as you need them after taking the database offline.

  • Escenario de restauración por etapas en líneaOnline piecemeal restore scenario

    En una restauración por etapas en línea, tras secuencia de restauración parcial, la base de datos está en línea y el grupo de archivos principal y los grupos de archivos secundarios recuperados están disponibles.In an online piecemeal restore, after the partial-restore sequence, the database is online, and the primary filegroup and any recovered secondary filegroups are available. Los grupos de archivos que todavía no se han restaurado permanecen sin conexión, pero se pueden restaurar cuando sea necesario mientras la base de datos se encuentre en línea.Filegroups that have not yet been restored remain offline, but they can be restored as needed while the database remains online.

    Las restauraciones por etapas en línea pueden incluir transacciones diferidas.Online piecemeal restores can involve deferred transactions. Cuando solo se restaura un subconjunto de grupos de archivos, puede que se difieran las transacciones de la base de datos que dependan de los grupos de archivos en línea.When only a subset of filegroups has been restored, transactions in the database that depend on online filegroups might become deferred. Esto es normal, porque toda la base de datos debe ser coherente.This is typical, because the whole database must be consistent. Para obtener más información, vea Transacciones diferidas (SQL Server).For more information, see Deferred Transactions (SQL Server).

  • OLTP en memoria de SQL ServerSQL Server In-Memory OLTP escenario de restauración por etapaspiecemeal restore scenario

    Para obtener información sobre las restauraciones por etapas de bases de datos de OLTP en memoria, vea Copias de seguridad y restauración por etapas de bases de datos con tablas con optimización para memoria.For information on Piecemeal Restores of In-Memory OLTP databases see Piecemeal Backup and Restore of Databases With Memory-Optimized Tables.

RestrictionsRestrictions

Si una secuencia de restauración parcial excluye cualquier grupo de archivos FILESTREAM , no se admite la restauración a un momento dado.If a partial restore sequence excludes any FILESTREAM filegroup, point-in-time restore is not supported. Puede forzarse la continuación de la secuencia de restauración.You can force the restore sequence to continue. Sin embargo, no se podrán restaurar los grupos de archivos FILESTREAM omitidos en la instrucción RESTORE.However the FILESTREAM filegroups that are omitted from your RESTORE statement can never be restored. Para forzar una restauración a un momento específico, especifique la opción CONTINUE_AFTER_ERROR junto con la opción STOPAT, STOPATMARK o STOPBEFOREMARK, que debe especificar también en las instrucciones RESTORE LOG siguientes.To force a point-in-time restore, specify the CONTINUE_AFTER_ERROR option together with the STOPAT, STOPATMARK, or STOPBEFOREMARK option, which you must also specify in your subsequent RESTORE LOG statements. Si se especifica CONTINUE_AFTER_ERROR, la secuencia de restauración parcial será correcta y el grupo de archivos FILESTREAM no será recuperable.If you specify CONTINUE_AFTER_ERROR, the partial restore sequence succeeds and the FILESTREAM filegroup becomes unrecoverable.

Restauración por etapas con el modelo de recuperación simplePiecemeal Restore Under the Simple Recovery Model

Con el modelo de recuperación simple, la secuencia de restauración por etapas debe comenzar con una copia de seguridad completa o parcial de la base de datos.Under the simple recovery model, the piecemeal restore sequence must start with a full database or partial backup. A continuación, si la copia de seguridad restaurada es una base diferencial, restaure la copia de seguridad diferencial más reciente.Then, if the restored backup is a differential base, restore the latest differential backup next.

Durante la primera secuencia de restauración parcial, si solo se restaura un subconjunto de grupos de archivos de lectura/escritura, todos los grupos de archivos no restaurados quedan inactivos al recuperar la base de datos restaurada parcialmente.During the first partial restore sequence, if you restore only a subset of read/write filegroups, any unrestored filegroups become defunct when you recover the partially restored database. La exclusión de un grupo de archivos de lectura/escritura de una secuencia de restauración parcial solo es apropiada en los siguientes casos:Omitting a read/write filegroup from the partial-restore sequence is appropriate only in the following cases:

  • Desea que los grupos de archivos no restaurados queden inactivos.You intend for the unrestored filegroups to become defunct.

  • La secuencia de restauración alcanzará un punto de recuperación en el que cada grupo de archivos no restaurado ha pasado a ser de solo lectura, se ha eliminada o ha quedado inactivo (durante una restauración anterior de la secuencia de restauración parcial).The restore sequence will arrive at a recovery point at which each unrestored filegroup has become read-only, dropped, or defunct (during a previous restore in the partial-restore sequence).

  • La copia de seguridad completa se realizó mientras la base de datos utilizaba el modelo de recuperación simple, pero el punto de recuperación es de un momento cuando la base de datos utilizaba el modelo de recuperación completa.The full backup was taken while the database was using the simple recovery model, but the recovery point is at a time when the database is using the full recovery model. Para obtener información, vea "Realizar una restauración por etapas de una base de datos cuyo modelo de recuperación ha cambiado de simple a completo", más adelante en este tema.For more information, see "Performing a Piecemeal Restore of a Database Whose Recovery Model Has Been Switched from Simple to Full," later in this topic.

Requisitos de la restauración por etapas con el modelo de recuperación simpleRequirements for Piecemeal Restore Under the Simple Recovery Model

Con el modelo de recuperación simple, la fase inicial restaura y recupera el grupo de archivos principal y todos los grupos de archivos de lectura/escritura secundarios.Under the simple recovery model, the initial stage restores and recovers the primary filegroup and all read/write secondary filegroups. Una vez terminada la fase inicial, los archivos recuperados (si son válidos y coherentes con la base de datos) pueden ponerse en línea directamente.After the initial stage is completed, recovered files, if they are valid and consistent with the database, can be brought online directly.

A partir de ese momento, se pueden restaurar los grupos de archivos de solo lectura en una o varias fases adicionales.Thereafter, read-only filegroups can be restored in one or more additional stages.

La restauración por etapas está disponible para un grupo de archivos secundarios de solo lectura únicamente si se cumple lo siguiente:Piecemeal restore is available for a read-only secondary filegroup only if the following are true:

  • Era de solo lectura cuando se hizo su copia de seguridad.Was read-only when backed up.

  • Ha permanecido como solo lectura (y se mantiene la coherencia lógica con el grupo de archivos principal).Has remained read-only (keeping it logically consistent with the primary filegroup).

Para realizar una restauración por etapas, se deben seguir estas directrices:To perform a piecemeal restore, the following guidelines must be followed:

  • Un conjunto de copias de seguridad completo para la restauración por etapas de una base de datos con el modelo de recuperación simple debe contener lo siguiente:A complete set of backups for the piecemeal restore of a simple recovery model database must contain the following:

    • Una copia de seguridad de base de datos parcial o completa que contenga el grupo de archivos principal y todos los grupos de archivos que tenían acceso de lectura/escritura al hacer la copia de seguridad.A partial or full database backup that contains the primary filegroup and all filegroups that were read/write at the time of the backup.

    • Una copia de seguridad de cada archivo de solo lectura.A backup of each read-only file.

  • Para que la copia de seguridad de un archivo de solo lectura sea coherente con el grupo de archivos principal, el grupo de archivos secundario debe haber sido de solo lectura desde que se hizo la copia de seguridad hasta que se completó la copia de seguridad que incluye el grupo de archivos principal.For the backup of a read-only file to be consistent with the primary filegroup, the secondary filegroup must have been read-only from when it was backed up until the backup that contains the primary filegroup was completed. Puede usar copias de seguridad diferenciales de archivos si se hicieron después de que el grupo de archivos pasara a ser de solo lectura.You can use differential file backups, if they were taken after the filegroup became read-only.

Fases de la restauración por etapas (modelo de recuperación simple)Piecemeal Restore Stages (Simple Recovery Model)

El escenario de restauración por etapas implica las siguientes etapas:The piecemeal restore scenario involves the following stages:

  • Fase inicial (restauración y recuperación del grupo de archivos principal y de todos los grupos de archivos de lectura/escritura)Initial stage (restore and recover the primary filegroup and all read/write filegroups)

    La etapa inicial realiza una restauración parcial.The initial stage performs a partial restore. La secuencia de restauración parcial restaura el grupo de archivos principal, todos los grupos de archivos secundarios de lectura/escritura y, opcionalmente, algunos grupos de archivos de solo lectura.The partial restore sequence restores the primary filegroup, all read/write secondary filegroups, and (optionally) some of the read-only filegroups. Durante la fase inicial, toda la base de datos debe pasar a modo sin conexión.During the initial stage, the whole database must go offline. Después de la etapa inicial, la base de datos está en línea y los grupos de archivos restaurados estarán disponibles.After the initial stage, the database is online, and restored filegroups are available. Sin embargo, los grupos de archivos de solo lectura que aún no se han restaurado permanecen sin conexión.However, any read-only filegroups that have not yet been restored, remain offline.

    La primera instrucción RESTORE de la fase inicial debe realizar lo siguiente:The first RESTORE statement in the initial stage must do the following:

    • Usar una copia de seguridad parcial o completa de la base de datos que incluya el grupo de archivos principal y todos los grupos de archivos que eran de lectura/escritura al hacer la copia de seguridad.Use a partial or full database backup that contains the primary filegroup and all filegroups that were read/write at the time of the backup. Es normal comenzar una secuencia de restauración parcial mediante la restauración de una copia de seguridad parcial.It is common to start a partial restore sequence by restoring a partial backup.

    • Especificar la opción PARTIAL, que indica el inicio de una restauración por etapas.Specify the PARTIAL option, which indicates the start of a piecemeal restore.

    Nota

    La opción PARTIAL realiza comprobaciones de seguridad que garantizan que la base de datos resultante es adecuada para su uso como base de datos de producción.The PARTIAL option performs safety checks that ensure that the resulting database is suited for use as a production database.

    • Especificar la opción READ_WRITE_FILEGROUPS si la copia de seguridad es una copia de seguridad de base de datos completa.Specify the READ_WRITE_FILEGROUPS option if the backup is a full database backup.
  • Mientras la base de datos esté en línea, se pueden usar una o varias restauraciones de archivos en línea para restaurar y recuperar archivos de solo lectura sin conexión que eran de solo lectura cuando se realizó la copia de seguridad.While the database is online, you can use one or more online file restores to restore and recover offline read-only files that were read-only at the time of backup. La programación de la restauración de archivos en línea depende de cuándo desee que los datos tengan conexión.The timing of the online file restores depends on when you want to have the data online.

    La restauración de los datos a un archivo depende de lo siguiente:Whether you must restore data to a file depends on the following:

    • Los archivos válidos de solo lectura que son coherentes con la base de datos pueden ponerse en línea directamente si se recuperan sin restaurar ningún dato.Valid read-only files that are consistent with the database can be brought online directly by recovering them without restoring any data.

    • Los archivos dañados o incoherentes con la base de datos se deben restaurar antes de recuperarlos.Files that are damaged or inconsistent with the database must be restored before they are recovered.

EjemplosExamples

Restauración por etapas con el modelo de recuperación completaPiecemeal Restore Under the Full Recovery Model

Con el modelo de recuperación completa o el modelo de recuperación optimizado para cargas masivas de registros, se puede realizar una restauración por etapas de cualquier base de datos que incluya varios grupos de archivos y se puede restaurar una base de datos a cualquier momento dado en el tiempo.Under the full recovery model or bulk-logged recovery model, piecemeal restore is available for any database that contains multiple filegroups and you can restore a database to any point in time. Las secuencias de la restauración por etapas son las siguientes:The restore sequences of a piecemeal restore behave as follows:

  • secuencia de restauración parcialPartial-restore sequence

    La secuencia de restauración parcial restaura el grupo de archivos principal y, opcionalmente, algunos de los grupos de archivos secundarios.The partial restore sequence restores the primary filegroup and, optionally, some of the secondary filegroups.

    La primera instrucción RESTORE DATABASE debe realizar lo siguiente:The first RESTORE DATABASE statement must do the following:

    • Especificar la opción PARTIAL,Specify the PARTIAL option. que indica el inicio de una restauración por etapas.This indicates the start of a piecemeal restore.

    • Utilizar cualquier copia de seguridad completa que contenga el grupo de archivos principal.Use any full database backup that contains the primary filegroup. La práctica normal es comenzar una secuencia de restauración parcial mediante la restauración de una copia de seguridad parcial.The common practice is to start a partial restore sequence by restoring a partial backup.

    • Para restaurar a un momento específico, se debe especificar este momento en la secuencia de restauración parcial.To restore to a specific point in time, you must specify the time in the partial restore sequence. Las fases sucesivas de la secuencia de restauración deberán especificar el mismo momento.Every successive step of the restore sequence must specify the same point in time.

  • Las secuencias de restauración de grupos de archivos ponen en línea los grupos de archivos adicionales en un punto coherente con la base de datos.Filegroup-restore sequences bring additional filegroups online to a point consistent with the database.

    En la edición Enterprise, se puede restaurar y recuperar cualquier grupo de archivos secundario sin conexión mientras la base de datos permanece en línea.In the Enterprise edition, any offline secondary filegroup can be restored and recovered while the database remains online. Si un determinado archivo de solo lectura está dañado o no es coherente con la base de datos, no necesita restauración.If a specific read-only file is undamaged and consistent with the database, the file does not have to be restored. Para obtener más información, vea Recuperar una base de datos sin restaurar los datos (Transact-SQL).For more information, see Recover a Database Without Restoring Data (Transact-SQL).

Aplicar copias de seguridad de registrosApplying Log Backups

Si un grupo de archivos de solo lectura ha sido de solo lectura desde antes de la creación de la copia de seguridad de archivos, no es necesario aplicar las copias de seguridad de registros al grupo de archivos y éstas se omiten en la restauración de archivos.If a read-only filegroup has been read-only since before the file backup was created, applying log backups to the filegroup is unnecessary and is skipped by file restore. Si el grupo de archivos es de lectura/escritura, debe aplicarse una cadena ininterrumpida de copias de seguridad de registros a la última recuperación completa o diferencial para actualizar el grupo de archivos al archivo de registro actual.If the filegroup is read/write, an unbroken chain of log backups must be applied to the last full or differential restore to bring the filegroup forward to the current log file.

EjemplosExamples

Realizar una restauración por etapas de una base de datos cuyo modelo de recuperación ha cambiado de simple a completoPerforming a Piecemeal Restore of a Database Whose Recovery Model Has Been Switched from Simple to Full

Puede realizar una restauración por etapas de una base de datos cuyo modelo de recuperación haya cambiado de un modelo de recuperación simple a uno completo desde la creación de la copia de seguridad parcial, completa o de base de datos.You can perform a piecemeal restore of a database that has been switched from the simple recovery model to the full recovery model since the full partial or database backup. Por ejemplo, supongamos que realiza los siguientes pasos para una base de datos:For example, consider a database for which you take the following steps:

  1. Crea una copia de seguridad parcial (copia_1) de una base de datos de modelo simple.Create a partial backup (backup_1) of a simple-model database.

  2. Al cabo de un tiempo, cambia el modelo de recuperación a completo.After some time, change the recovery model to full.

  3. Crea una copia de seguridad diferencial.Create a differential backup.

  4. Comienza a realizar copias de seguridad de registros.Start taking log backups.

A partir de este punto, la siguiente secuencia será válida:Thereafter, the following sequence is valid:

  1. Una restauración parcial que omite algunos grupos de archivos secundarios.A partial restore that omits some secondary filegroups.

  2. Una restauración diferencial seguida de otras restauraciones necesarias.A differential restore followed by any other needed restores.

  3. Más adelante, una restauración de un grupo de archivos secundarios de lectura/escritura con WITH NORECOVERY de la copia de seguridad parcial copia_1.Later, a file restore of a read/write secondary filegroup WITH NORECOVERY from the backup_1 partial backup

  4. Una copia de seguridad diferencial se realiza después de otras copias de seguridad restauradas en la secuencia de restauración por etapas original para restaurar los datos hasta el punto de recuperación original.The differential backup followed by any other backups that were restored in the original piecemeal restore sequence to restore the data up to the original recovery point.

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.

Consulte tambiénSee Also

Aplicar copias de seguridad del registro de transacciones (SQL Server) Apply Transaction Log Backups (SQL Server)
RESTORE (Transact-SQL) RESTORE (Transact-SQL)
Restaurar una base de datos de SQL Server a un momento dado (modelo de recuperación completa) Restore a SQL Server Database to a Point in Time (Full Recovery Model)
Información general sobre restauración y recuperación (SQL Server) Restore and Recovery Overview (SQL Server)
Planear y realizar secuencias de restauración (modelo de recuperación completa)Plan and Perform Restore Sequences (Full Recovery Model)