Restauración en línea (SQL Server)

Se aplica a:SQL Server

La restauración con conexión solo se admite en la edición SQL Server Enterprise En esta versión, la restauración de un archivo, una página o por etapas es en línea de manera predeterminada. 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.

La restauración de datos mientras la base de datos está en línea se denomina restauración en línea. 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. En todos los modelos de recuperación se puede restaurar un archivo sin conexión mientras la base de datos está en línea. En el modelo de recuperación completa, también se pueden restaurar páginas mientras la base de datos está en línea.

Nota:

La restauración con conexión se produce automáticamente en SQL Server Enterprise y no requiere ninguna acción por parte del usuario. 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. Para obtener más información, vea Dejar sin conexión una base de datos o un archivomás adelante en este tema.

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. 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. Por el contrario, durante una restauración en línea de una página, solo esa página está sin conexión.

El escenario de restauración en línea implica los siguientes pasos básicos:

  1. Restaure los datos.

  2. Restaure el registro utilizando WITH RECOVERY para la última restauración del registro. Así, se ponen en línea los datos restaurados.

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. En ese caso, la transacción se difiere. Para más información, vea Transacciones diferidas (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. Para obtener más información, vea Ver o cambiar el modelo de recuperación de una base de datos (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.

Precaución

Al utilizar las copias de seguridad de instantánea, no se puede realizar un 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.

Copias de seguridad de registros para una restauración en línea

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. Las copias de seguridad del registro de transacciones que llevan a este punto de recuperación y lo incluyen deben estar todas disponibles. Normalmente, es necesario hacer una copia de seguridad de registros después de ese punto para cubrir el punto de recuperación del archivo. 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. En ese caso, no es necesario disponer de una copia de seguridad de registros.

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. 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:

  • 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. 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.

    Nota:

    La información anterior se puede aplicar también a todos los archivos sin conexión.

  • 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. 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). 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. 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. 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ón y es necesaria porque el motor de base de datos de SQL Server no puede utilizar un registro conectado para una restauración con conexión.

    Nota:

    Como alternativa, puede dejar el archivo sin conexión manualmente antes de la secuencia de restauración. Para obtener más información, vea "Dejar sin conexión una base de datos o un archivo" más adelante en este tema.

Dejar sin conexión una base de datos o un archivo

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:

  • En todos los modelos de recuperación puede dejar sin conexión la base de datos con la siguiente instrucción ALTER DATABASE :

    ALTER DATABASE nombre_base_de_datos 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:

    BACKUP LOG nombre_base_de_datos WITH NORECOVERY.

Siempre que la base de datos permanezca sin conexión, todas las restauraciones serán sin conexión.

Ejemplos

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.

Related Tasks

Consulte también

Restauraciones de archivos (modelo de recuperación completa)
Restauraciones de archivos (modelo de recuperación simple)
Restaurar páginas (SQL Server)
Restauraciones por etapas (SQL Server)
Información general sobre restauración y recuperación (SQL Server)