Cómo crear una solución simple de recuperación de base de datos usando transvase de registros de SQL Server

Para prevenir pérdidas accidentales de datos, siempre es bueno asegurarse de que hay una solución de recuperación de desastres disponible. Esto puede ser fácilmente logrado teniendo una copia fija de la base de datos primaria en otra instancia de SQL Server, lo cual puede ser logrado vía el transvase de registros.

El transvase de registros es una solución que provee una protección de recuperación de desastre al nivel de la base de datos. Una configuración de transvase de registros incluye un servidor primario hospedando a una base de datos en línea, y uno o más servidores secundarios que hospedan copias de la base de datos. El proceso es bastante simple – una base de datos es respaldada y restaurada desde un servidor primario a un servidor secundario. En intervalos programados regularmente, una copia de seguridad de registros de transacciones es realizada en los servidores primario y secundario para mantener las bases de datos en sincronización.

Beneficios del transvase del transvase de registros:

  • El transvase de datos es una gran solución para los reportes externos o recuperación de desastres no en tiempo real a nivel de base de datos.
  • El acceso de sólo lectura (limitado) a bases de datos secundarias está disponible durante el intervalo entre trabajos de restauración.
  • El transvase de registros permite un retrase especificado por el usuario entre las sincronizaciones de la base de datos, lo cual permite la recuperación de datos sin cambios desde una base de datos secundaria en un rango especificado de tiempo.

Prerrequisitos:

  • Una base de datos primaria debe usar el modelo de recuperación completa o el de registro masivo (si el modelo de recuperación de la base de datos es cambiado a simple, el transvase de registros de SQL Server dejará de funcionar).
  • Antes de que el transvase de registros pueda ser configurado en SQL Server, las copias de seguridad de los registros de transacciones deben ponerse a disposición de un servidor secundario compartiendo el directorio donde se generan las copias de seguridad de los registros.

Para configurar el transvase de registros, los siguientes pasos necesitan ser ejecutados:

  1. Navegue a la base de datos que desea usar como base de datos primaria en el explorador de objetos de SSMS, haga clic derecho e ella y seleccione Properties:

  2. En el panel Select a page, haga clic en Transaction Log Shipping y seleccione la casilla Enable this as a primary database in a log shipping configuration.

  3. Haga clic en el botón Backup Settings en la misma pestaña para abrir el diálogo Transaction Log Backup Settings.
    • Provea una ruta de red a la carpeta compartida de registros de transacciones.
    • Especifique una ruta local a la carpeta de copias de seguridad en el campo If the backup folder is located on the primary server, type a local path to the folder, si la carpeta está en un servidor primario. Si una carpeta de copias de seguridad no está en un servidor primario, este campo debería permanecer vacío.
    • Provea los parámetros apropiados para las opciones Delete files older than y Alert if no backup occurs within.
    • Haga clic en el botón Schedule y personalice los parámetros en el programa de respaldos, y provea un nombre para el trabajo en el campo Job name.
    • En el menú desplegable Set backup compression, elija uno de los ajustes de compresión existentes: Use el ajuste por defecto del servidor, Comprimir copia de seguridad (Compress backup) o No Comprimir Copia de Seguridad (Do not compress backup).
  4. Cuando todas las opciones en el diálogo Transaction Log Backup Settings hayan sido establecidas, cierre el diálogo haciendo clic en el botón OK.

  5. El diálogo Database properties es mostrado de nuevo. En el diálogo Secondary server instances and databases, haga clic en el botón Add para abrir el diálogo Secondary Database Settings, en el cual usted necesitará hacer lo siguiente:

    1. Haga clic en Connect y conéctese a la instancia de SQL Server que será usada como un servidor secundario.
    2. En el diálogo Secondary Database field, especifique el nombre de la base de datos que será creada, o elija la base de datos existente desde la lista del menú desplegable.
    3. En las pestañas Initialize Secondary database, Copy files y Restore, elija la opción/ajuste apropiados para la base de datos secundaria y haga clic en OK.

  6. Para monitorear esta configuración del transvase de datos en SQL Server, el servidor monitor debe ser añadido en este punto (no puede ser añadido después sin reemplazar toda la configuración). Una instancia Monitor SQL Server puede ser añadida seleccionando la casilla Use a monitor server instance y especificando los parámetros del servidor en el diálogo Log shipping monitor settings, el cual puede ser abierto por el botón Settings.
  7. Haga clic en OK para finalizar el proceso.

Esto asegura que hay una copia de la base de datos primara en otra instancia SQL Server que puede ser usada como medida de precaución en caso de un desastre, o usada para cualquier otro propósito, así como una base de datos de monitoreo que registra el historial y el estado de las operaciones de respaldo y restauración y, opcionalmente, genera alertas si estas operaciones fallan y no siguen el programa.

Incluso así, hay muchos contras a este método:

  • El asistente de configuración del transvase de registros puede ser confuso.
  • No hay monitoreo o una vista general simples de los trabajos programados o aquellos que ya han sido completados.

julio 25, 2017