Compartir a través de


Restauración en línea (SQL Server)

La restauración en línea solo se admite en SQL Server Enterprise Edition. En esta edición, una restauración parcial, de páginas o archivos se realiza en línea de manera predeterminada. Este tema es relevante para las bases de datos que contienen 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 cada vez que el grupo de archivos principal está en línea, incluso si uno o varios de sus grupos de archivos secundarios están sin conexión. En cualquier modelo de recuperación, 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 puede restaurar páginas mientras la base de datos está en línea.

Nota:

La restauración en línea se produce automáticamente en SQL Server Enterprise y no requiere ninguna acción de usuario. Si no desea usar la restauración en línea, puede desconectar una base de datos antes de iniciar una restauración. Para obtener más información, consulte Quitar una base de datos o un archivo fuera de línea, más adelante en este tema.

Durante una restauración de archivos en línea, todos los archivos que se restauran y su grupo de archivos están sin conexión. Si alguno de estos archivos está en línea cuando se inicia una restauración en línea, la primera instrucción de restauración pone el grupo de archivos del archivo sin conexión. Por el contrario, durante una restauración de páginas en línea, solo la página está sin conexión.

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

  1. Restaure los datos.

  2. Restaure el registro mediante WITH RECOVERY para la última restauración del registro. Esto pone los datos restaurados en línea.

En ocasiones, no se puede revertir una transacción sin confirmar porque los datos que requiere la reversión están sin conexión durante el inicio. En este caso, la transacción se aplaza. Para obtener más información, vea Transacciones diferidas (SQL Server).

Nota:

Si la base de datos usa actualmente el modelo de recuperación optimizado para cargas masivas de registros, se recomienda cambiar al modelo de recuperación completa antes de iniciar una 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, el mismo número de dispositivos debe estar disponible durante una restauración en línea.

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

En una restauración en línea, el punto de recuperación es el punto en el que los datos que se restauran fueron desconectados o se pusieron en modo de solo lectura por última vez. Las copias de seguridad del registro de transacciones que conducen a y que incluyen este punto de recuperación deben estar disponibles. Por lo general, se requiere una copia de seguridad de registros después de ese punto para cubrir el punto de recuperación del archivo. La única excepción es durante una restauración en línea de datos de solo lectura de una copia de seguridad de datos que se realizó después de que los datos se convirtieron en de solo lectura. En este caso, no es necesario tener una copia de seguridad de registros.

Por lo general, puede realizar copias de seguridad del registro de transacciones mientras la base de datos está en línea, incluso después del inicio de la secuencia de restauración. El tiempo de la última copia de seguridad del registro depende de las propiedades del archivo que se va a restaurar:

  • En el caso de un archivo de solo lectura en línea, puede realizar la última copia de seguridad del registro necesaria para la recuperación antes o durante la primera secuencia de restauración. Es posible que un grupo de archivos de solo lectura no requiera copias de seguridad de registros si se realizó una copia de seguridad diferencial o de datos después de que el grupo de archivos se convirtiera en de solo lectura.

    Nota:

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

  • Existe un caso especial para un archivo de lectura y escritura que estaba en línea cuando se emitió la primera instrucción de restauración y que luego se desconectó automáticamente mediante esa instrucción de restauración. En este caso, debe realizar una copia de seguridad del registro de transacciones durante la secuencia de restauración inicial (la secuencia de una o varias instrucciones RESTORE que restauran, avanzan y recuperan datos). Por lo general, esta copia de seguridad de registros debe producirse después de restaurar todas las copias de seguridad completas y antes de recuperar los datos. Sin embargo, si hay varias copias de seguridad de archivos para un grupo de archivos específico, el punto mínimo de copia de seguridad del registro es el momento después de que el grupo de archivos esté sin conexión. Esta copia de seguridad del registro posterior a la restauración de los datos captura el momento en el que el archivo queda fuera de línea. La copia de seguridad del registro posterior a la restauración de datos es necesaria porque el motor de base de datos de SQL Server no puede usar el registro en línea para una restauración en línea.

    Nota:

    Como alternativa, puede desconectar manualmente el archivo antes de la secuencia de restauración. Para obtener más información, consulte "Desconectar una base de datos o archivo" en la parte posterior de este tema.

Desconectar una base de datos o un archivo

Si no desea usar la restauración en línea, puede desconectar la base de datos antes de iniciar la secuencia de restauración mediante uno de los métodos siguientes:

  • En cualquier modelo de recuperación, puede desconectar la base de datos mediante la siguiente instrucción ALTER DATABASE :

    ALTER DATABASE database_name ESTABLECER FUERA DE LÍNEA

  • Como alternativa, bajo el modelo de recuperación completa, puede forzar que una restauración de archivos o páginas esté sin conexión, utilizando la siguiente instrucción BACKUP LOG, que coloca la base de datos en el estado de restauración.

    Realizar copia de seguridad de LOG database_name sin recuperación.

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

Ejemplos

Nota:

La sintaxis de una secuencia de restauración en línea es la misma que para una secuencia de restauración sin conexión.

Tareas relacionadas

Véase 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)