Compartir a través de


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 conmutación por error de grupos de disponibilidad AlwaysOn, 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 se sincronizan 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 a sincronizarse 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 réplicas secundaria y primaria están configuradas para el modo de conmutación por error automática, una vez sincronizada la réplica secundaria, también puede servir como destino de una conmutación por error automática. 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 bases de datos dentro del grupo de disponibilidad no se mantiene durante la conmutación por error.

    Nota:

    Los grupos de disponibilidad AlwaysOn no admiten transacciones entre bases de datos ni transacciones distribuidas. Para obtener más información, consulte Transacciones entre bases de datos no compatibles con el reflejo de base de datos o los 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 sincronizarse actualmente con la réplica principal. Esto requiere que todas las bases de datos secundarias de esta réplica secundaria se hayan unido al grupo de disponibilidad y que se sincronicen con sus bases de datos principales correspondientes (es decir, las bases de datos secundarias locales deben estar SINCRONIZADAS).

    Sugerencia

    Para determinar la preparación para la conmutación por error de una réplica secundaria, consulte la columna is_failover_ready en 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 del tablero del 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

  1. En el Explorador de objetos, conéctese a una instancia de servidor que hospede una réplica secundaria del grupo de disponibilidad que necesita realizar un failover y expanda el árbol de servidores.

  2. Expanda el nodo Alta disponibilidad AlwaysOn y el nodo Grupos de disponibilidad .

  3. 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 .

  4. 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).

Uso de Transact-SQL

Para realizar la conmutación por error manual de un grupo de disponibilidad

  1. Conéctese a la instancia del servidor que hospeda la réplica secundaria de destino.

  2. Use la instrucción ALTER AVAILABILITY GROUP del siguiente modo:

    ALTER AVAILABILITY GROUP group_name CONMUTACIÓN POR ERROR

    donde group_name es el nombre del grupo de disponibilidad.

    En el ejemplo siguiente se conmuta manualmente el grupo de disponibilidad MyAg a la réplica secundaria conectada.

    ALTER AVAILABILITY GROUP MyAg FAILOVER;  
    

Uso de PowerShell

Para realizar la conmutación por error manual de un grupo de disponibilidad

  1. Cambie el directorio (cd) a la instancia del servidor que hospeda la réplica secundaria de destino.

  2. Use 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.

    El siguiente ejemplo conmuta 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 conmutar manualmente por error un grupo de disponibilidad

Si conmuta por error fuera del conjunto de conmutación automática por error 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, consulte Windows Server Failover Clustering (WSFC) con SQL Server.

Véase también

Información general de los grupos de disponibilidad AlwaysOn (SQL Server)
Conmutación por error y modos de conmutación por error (AlwaysOn Availability Groups)
Realizar una conmutación por error manual forzada de un grupo de disponibilidad (SQL Server)