Realizar una conmutación por error manual planeada de un grupo de disponibilidad (SQL Server)
En este tema se describe cómo realizar una conmutación por error manual sin pérdida de datos (una conmutación por error manual planeada) en un grupo de disponibilidad AlwaysOn mediante SQL Server Management Studio, Transact-SQL o PowerShell en SQL Server 2014. Un grupo de disponibilidad realiza la conmutación por error en el nivel de réplica de disponibilidad. Una conmutación por error manual planeada, como cualquier Always On conmutación por error de grupos de disponibilidad, realiza la transición de una réplica secundaria al rol principal y, simultáneamente, realiza la transición de la réplica principal anterior al rol secundario.
Una conmutación por error manual planeada, que solo se admite cuando la réplica principal y la réplica secundaria de destino se ejecutan en modo de confirmación sincrónica y están sincronizadas actualmente, conserva todos los datos de las bases de datos secundarias que están unidas al grupo de disponibilidad en la réplica secundaria de destino. Una vez que la réplica principal anterior realiza la transición al rol secundario, sus bases de datos se convierten en bases de datos secundarias y comienzan la sincronización con las nuevas bases de datos principales. Después de que todas realicen la transición al estado SYNCHRONIZED, la nueva réplica secundaria es apta para actuar como destino de una conmutación por error manual planeada futura.
Nota
Si las replicas principal y secundaria se configuran para el modo de conmutación automática por error, una vez que la réplica secundaria esté sincronizada, también pueden actuar como destino de una conmutación automática por error. Para obtener más información, consulte Modos de disponibilidad (grupos de disponibilidad AlwaysOn).
Antes de empezar
Limitaciones y restricciones
Un comando de conmutación por error realiza la devolución en cuanto la réplica secundaria de destino haya aceptado el comando. Sin embargo, la recuperación de la base de datos se produce de forma asincrónica cuando el grupo de disponibilidad ha terminado la conmutación por error.
La coherencia entre las bases de datos de las distintas bases de datos del grupo de disponibilidad no se mantiene en la conmutación por error.
Nota
Los grupos de disponibilidad no Always On admiten transacciones entre bases de datos y transacciones distribuidas. Para obtener más información, vea Transacciones entre bases de datos no compatibles con la creación de reflejo de la base de datos o grupos de disponibilidad AlwaysOn (SQL Server).
Requisitos previos y restricciones
La réplica secundaria de destino y la réplica principal deben ejecutarse en modo de disponibilidad de confirmación sincrónica.
La réplica secundaria de destino debe estar sincronizada actualmente con la réplica principal. Esto requiere que todas las bases de datos secundarias de la réplica secundaria deben estar unidas al grupo de disponibilidad y sincronizadas con sus bases de datos principales correspondientes (es decir, las bases de datos secundarias locales deben estar en estado SYNCHRONIZED).
Sugerencia
Para determinar la preparación para la conmutación por error de una réplica secundaria, consulte la columna is_failover_ready de la vista de administración dinámica sys.dm_hadr_database_cluster_states o examine la columna Preparación para la conmutación por error de Panel de grupo AlwaysOn.
Esta tarea solo se admite en la réplica secundaria de destino. Debe estar conectado a la instancia del servidor que hospeda la réplica secundaria de destino.
Seguridad
Permisos
Se requiere el permiso ALTER AVAILABILITY GROUP en el grupo de disponibilidad, el permiso CONTROL AVAILABILITY GROUP, el permiso ALTER ANY AVAILABILITY GROUP o el permiso CONTROL SERVER.
Uso de SQL Server Management Studio
Para realizar la conmutación por error manual de un grupo de disponibilidad
En el Explorador de objetos, conéctese a una instancia de servidor que hospede una réplica secundaria del grupo de disponibilidad que necesita ser objeto de conmutación por error, y expanda el árbol.
Expanda los nodos Alta disponibilidad de AlwaysOn y Grupos de disponibilidad .
Haga clic con el botón derecho en el grupo de disponibilidad que va a ser objeto de conmutación por error y seleccione el comando Conmutación por error .
Esto inicia el Asistente para conmutación por error del grupo de disponibilidad. Para más información, consulte Usar el Asistente para grupo de disponibilidad de conmutación por error (SQL Server Management Studio).
Usar Transact-SQL
Para realizar la conmutación por error manual de un grupo de disponibilidad
Conéctese a la instancia del servidor que hospeda la réplica secundaria de destino.
Use la instrucción ALTER AVAILABILITY GROUP del siguiente modo:
ALTER AVAILABILITY GROUP group_name FAILOVER
donde group_name es el nombre del grupo de disponibilidad.
En el ejemplo siguiente se conmuta por error manualmente el grupo de disponibilidad MyAg a la réplica secundaria conectada.
ALTER AVAILABILITY GROUP MyAg FAILOVER;
Usar PowerShell
Para realizar la conmutación por error manual de un grupo de disponibilidad
Cambie el directorio (
cd
) a la instancia de servidor que hospeda la réplica secundaria de destino.Utilice el cmdlet
Switch-SqlAvailabilityGroup
.Nota:
Para ver la sintaxis de un cmdlet, use el
Get-Help
cmdlet en el entorno de PowerShell de SQL Server 2014. Para más información, consulte Get Help SQL Server PowerShell.En el ejemplo siguiente se conmuta por error manualmente el grupo de disponibilidad MyAg a la réplica secundaria con la ruta de acceso especificada.
Switch-SqlAvailabilityGroup -Path SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MyAg
Para configurar y usar el proveedor de SQL Server PowerShell
Seguimiento: después de producir manualmente la conmutación por error en un grupo de disponibilidad
Si conmutó por error fuera del conjunto de conmutación por error automática del grupo de disponibilidad, ajuste los votos de cuórum de los nodos de WSFC para reflejar la nueva configuración del grupo de disponibilidad. Para obtener más información, vea Clústeres de conmutación por error de Windows Server (WSFC) con SQL Server.
Consulte también
Información general de los grupos de disponibilidad AlwaysOn (SQL Server)
Conmutación por error y modos de conmutación por error (grupos de disponibilidad AlwaysOn)
Realizar una conmutación por error manual forzada de un grupo de disponibilidad (SQL Server)