Cómo configurar Always On Availability Groups en SQL Server
Always On Availability Groups mantiene copias de tus bases en varios servidores para failover automatico. Aqui los pasos y comandos clave del setup.
- 1
Prepara los prerequisitos
Necesitas un Windows Server Failover Cluster (WSFC) con los nodos, y habilitar la caracteristica en cada instancia. Todas las replicas deben tener la misma edicion compatible.
-- Habilita Always On en la instancia (requiere reinicio del servicio) -- Se hace en SQL Server Configuration Manager, o con PowerShell: -- Enable-SqlAlwaysOn -ServerInstance 'SRV1\INST' -Force - 2
Crea el Availability Group
Define las replicas, su modo de disponibilidad (SYNCHRONOUS_COMMIT para HA sin perdida, ASYNCHRONOUS_COMMIT para DR remoto) y el failover automatico.
CREATE AVAILABILITY GROUP [AG_Produccion] FOR DATABASE [MiBase] REPLICA ON N'SRV1' WITH (ENDPOINT_URL = N'TCP://SRV1:5022', AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, FAILOVER_MODE = AUTOMATIC), N'SRV2' WITH (ENDPOINT_URL = N'TCP://SRV2:5022', AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, FAILOVER_MODE = AUTOMATIC); - 3
Une la replica secundaria al grupo
Desde el servidor secundario, une la instancia al AG y prepara las bases (restaurando full + log con NORECOVERY).
-- En la replica secundaria (SRV2) ALTER AVAILABILITY GROUP [AG_Produccion] JOIN; ALTER DATABASE [MiBase] SET HADR AVAILABILITY GROUP = [AG_Produccion]; - 4
Crea el listener
El listener es el nombre virtual al que se conectan las aplicaciones. Redirige automaticamente a la replica primaria tras un failover.
ALTER AVAILABILITY GROUP [AG_Produccion] ADD LISTENER N'AGListener' ( WITH IP ((N'10.0.0.50', N'255.255.255.0')), PORT = 1433);
// el error común
SYNCHRONOUS_COMMIT garantiza cero perdida de datos pero agrega latencia a cada commit: si la replica esta lejos, tu operacion se hace lenta. Usa ASYNCHRONOUS_COMMIT para sitios remotos. El failover automatico solo funciona con replicas sincronas y quorum sano en el WSFC.
// cuándo conviene un experto
Always On tiene muchas piezas (cluster, quorum, endpoints, listener, permisos) y un error deja el failover sin funcionar justo cuando lo necesitas. En dba.mx implementamos y probamos la alta disponibilidad con failover real, con techo cerrado.
Agenda un Escaneo — desde USD $550Esta guía es orientativa y usa comandos de referencia. En producción, adapta a tu versión y prueba en un ambiente seguro primero.