En esta página se describe qué son los grupos de disponibilidad Always On de SQL Server y cómo los admite Datastream en escenarios de conmutación por error y recuperación de datos.
Información general sobre los grupos de disponibilidad Always On
En SQL Server, los grupos de disponibilidad Always On son una solución de alta disponibilidad que te permite preparar tus bases de datos para situaciones de recuperación tras desastres.
Los grupos de disponibilidad Always On maximizan la disponibilidad de las bases de datos para las empresas. Los grupos de disponibilidad admiten un entorno replicado para un conjunto de bases de datos seleccionadas, conocidas como bases de datos de disponibilidad. Cada grupo incluye un conjunto de bases de datos primarias para las tareas de lectura y escritura, y hasta ocho conjuntos de bases de datos secundarias correspondientes. Las bases de datos secundarias pueden permitir opcionalmente el acceso de solo lectura o las operaciones de copia de seguridad.
Para obtener más información sobre los grupos de disponibilidad Always On, consulta el artículo ¿Qué es un grupo de disponibilidad Always On? en la documentación de SQL Server.
Para obtener información sobre los requisitos previos de los grupos de disponibilidad Always On de una instancia de SQL Server, consulta la documentación de SQL Server.
Configurar Datastream para usarlo con grupos de disponibilidad Always On
Datastream admite el modo de disponibilidad confirmación síncrona con el método de CDC de tablas de cambios. En este modo, la base de datos secundaria permanece sincronizada con la principal correspondiente hasta que se detiene la sincronización de datos. La confirmación de una transacción solo se envía al cliente cuando la réplica secundaria escribe los registros del registro de transacciones entrantes en un disco.
Para obtener información sobre los modos de disponibilidad, consulta Diferencias entre los modos de disponibilidad de un grupo de disponibilidad Always On.
Para configurar la instancia de SQL Server para usarla con grupos de disponibilidad Always On, debes habilitar el agente de SQL Server para que registre los eventos cuando se produzca una conmutación por error y, a continuación, ejecutar un trabajo de limpieza. Para ello, debes modificar los pasos del trabajo CDC
Agent para comprobar si la réplica actual es la principal. Para ello, se usa la función sys.fn_hadr_is_primary_replica
.
Usa los siguientes comandos para configurar tu instancia:
-- Check if the current replica is a primary for the corresponding database.
USE [DATABASE_NAME];
DECLARE @DatabaseName SYSNAME = DB_NAME();
IF (SELECT sys.fn_hadr_is_primary_replica(@DatabaseName)) = 1
BEGIN
-- If the replica isn't a primary, the code block that follows is skipped
EXECUTE sys.sp_cdc_add_job @job_type = 'capture';
EXECUTE sys.sp_cdc_add_job @job_type = 'cleanup';
END
Siguientes pasos
- Consulta más información sobre cómo funciona Datastream con las fuentes de SQL Server.