Habilitar y deshabilitar grupos de disponibilidad de AlwaysOn (SQL Server)

Habilitar Grupos de disponibilidad AlwaysOn es un requisito previo para que una instancia de servidor use grupos de disponibilidad. Para poder crear y configurar un grupo de disponibilidad, la característica de Grupos de disponibilidad AlwaysOn se debe haber habilitado en la cada instancia de SQL Server que hospedará una réplica de disponibilidad para uno o varios grupos de disponibilidad.

Nota importanteImportante

Si elimina y vuelve a crear un clúster de WSFC, debe deshabilitar y volver a habilitar la característica de Grupos de disponibilidad AlwaysOn en cada instancia de SQL Server que hospedaba una réplica de disponibilidad en el clúster de WSFC original.

  • **Antes de empezar: **

    Requisitos previos

    Seguridad

  • **Procedimientos: **

    • Determinar si los grupos de disponibilidad de AlwaysOn están habilitados

    • Habilitar los grupos de disponibilidad de AlwaysOn

    • Deshabilitar los grupos de disponibilidad de AlwaysOn

Antes de empezar

Requisitos previos para habilitar los grupos de disponibilidad de AlwaysOn

  • La instancia de servidor debe residir en un nodo de clústeres de conmutación por error de Windows Server (WSFC).

  • La instancia del servidor debe ejecutar una edición de SQL Server que admita Grupos de disponibilidad AlwaysOn. Para obtener más información, vea Características compatibles con las ediciones de SQL Server 2012.

  • Habilite los grupos de disponibilidad de AlwaysOn solo en una instancia del servidor cada vez. Después de habilitar los grupos de disponibilidad de AlwaysOn, espere hasta que se haya reiniciado el servicio SQL Server antes de seguir con otra instancia del servidor.

Para obtener información sobre los requisitos previos adicionales para crear y configurar los grupos de disponibilidad, vea Requisitos previos, restricciones y recomendaciones para Grupos de disponibilidad AlwaysOn (SQL Server).

Seguridad

Mientras los grupos de disponibilidad de AlwaysOn están habilitados en una instancia de SQL Server, la instancia del servidor tiene control total del clúster de WSFC.

Permisos

Requiere la pertenencia al grupo Administrador en el equipo local y control total del clúster de WSFC. Cuando habilite AlwaysOn mediante PowerShell, abra la ventana del símbolo del sistema mediante la opción Ejecutar como administrador.

Requiere permisos para crear y administrar objetos de Active Directory.

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Determinar si los grupos de disponibilidad de AlwaysOn están habilitados

  • SQL Server Management Studio

  • Transact-SQL

  • PowerShell

Usar SQL Server Management Studio

Para determinar si los grupos de disponibilidad de AlwaysOn están habilitados

  1. En el Explorador de objetos, haga clic con el botón secundario en la instancia del servidor y haga clic en Propiedades.

  2. En el cuadro de diálogo Propiedades del servidor, haga clic en la página General. La propiedad Habilitado para HADR muestra uno de los valores siguientes:

    • True si los grupos de disponibilidad de AlwaysOn están habilitados

    • False si los grupos de disponibilidad de AlwaysOn están deshabilitados.

Usar Transact-SQL

Para determinar si los grupos de disponibilidad de AlwaysOn están habilitados

  1. Use la siguiente instrucción SERVERPROPERTY:

    SELECT SERVERPROPERTY ('IsHadrEnabled');
    

    El valor de la propiedad del servidor IsHadrEnabled indica si una instancia de SQL Server está habilitada para los grupos de disponibilidad de AlwaysOn, de la manera siguiente:

    • Si IsHadrEnabled = 1, los grupos de disponibilidad de AlwaysOn están habilitados. 

    • Si IsHadrEnabled = 0, los grupos de disponibilidad de AlwaysOn están deshabilitados.

    [!NOTA]

    Para obtener más información acerca de la propiedad de servidor IsHadrEnabled, vea SERVERPROPERTY (Transact-SQL).

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Usar PowerShell

Para determinar si los grupos de disponibilidad de AlwaysOn están habilitados

  1. Establezca como predeterminada (cd) la instancia del servidor en la que desea determinar si Grupos de disponibilidad AlwaysOn está habilitada.

  2. Escriba el siguiente comando Get-Item de PowerShell:

    PS SQLSERVER:\SQL\NODE1\DEFAULT> get-item . | select IsHadrEnabled
    

    [!NOTA]

    Para ver la sintaxis de un cmdlet, use el cmdlet Get-Help en el entorno de SQL Server PowerShell. Para obtener más información, vea Obtener ayuda de SQL Server PowerShell.

Para configurar y usar el proveedor de SQL Server PowerShell

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Habilitar los grupos de disponibilidad de AlwaysOn

Para habilitar AlwaysOn, mediante:

  • Administrador de configuración de SQL Server

  • PowerShell

Usar el Administrador de configuración de SQL Server

Para habilitar los grupos de disponibilidad de AlwaysOn

  1. Conéctese al nodo de clúster de conmutación por error de Windows Server (WSFC) que hospeda la instancia de SQL Server donde desea habilitar los grupos de disponibilidad de AlwaysOn.

  2. En el menú Inicio, seleccione Todos los programas, Microsoft SQL Server 2012 , Herramientas de configuración y haga clic en Administrador de configuración de SQL Server.

  3. En el Administrador de configuración de SQL Server, haga clic en Servicios de SQL Server, haga clic con el botón secundario en SQL Server (<instance name>), donde <instance name> es el nombre de una instancia del servidor local para la que desea habilitar los grupos de disponibilidad de AlwaysOn, y haga clic en Propiedades.

  4. Seleccione la pestaña Alta disponibilidad de AlwaysOn.

  5. Compruebe que el campo Nombre del clúster de conmutación por error de Windows contiene el nombre del clúster de conmutación por error local. Si este campo está en blanco, esta instancia del servidor no admite actualmente Grupos de disponibilidad AlwaysOn. Puede ser que el equipo local no sea un nodo de clúster, que se haya cerrado el clúster de WSFC o que esta edición de SQL Server 2012 que no admita Grupos de disponibilidad AlwaysOn.

  6. Active la casilla Habilitar los grupos de disponibilidad de AlwaysOn y haga clic en Aceptar.

    El administrador de configuración de SQL Server guarda el cambio. A continuación, debe reiniciarse manualmente el servicio SQL Server. Esto le permite elegir una hora de reinicio que sea la mejor para sus requisitos empresariales. Al reiniciar el servicio SQL Server, AlwaysOn estará habilitado y la propiedad del servidor IsHadrEnabled se establecerá en 1.

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Usar SQL Server PowerShell

Para habilitar AlwaysOn

  1. Cambie el directorio (cd) a una instancia del servidor que desee habilitar para los grupos de disponibilidad de AlwaysOn.

  2. Use el cmdlet Enable-SqlAlwaysOn para habilitar los grupos de disponibilidad de AlwaysOn.

    Para ver la sintaxis de un cmdlet, use el cmdlet Get-Help en el entorno de SQL Server PowerShell. Para obtener más información, vea Obtener ayuda de SQL Server PowerShell.

    [!NOTA]

    Para obtener información sobre cómo controlar si el cmdlet Enable-SqlAlwaysOn reinicia el servicio SQL Server, vea ¿Cuándo reinicia un cmdlet el servicio SQL Server?, más adelante en este tema.

Para configurar y usar el proveedor de SQL Server PowerShell

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Ejemplo: Enable-SqlAlwaysOn

El siguiente comando de PowerShell habilita Grupos de disponibilidad AlwaysOn en una instancia de SQL Server (Computer\Instance).

Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance

Deshabilitar los grupos de disponibilidad de AlwaysOn

  • Antes de deshabilitar AlwaysOn:  

    Recomendaciones

  • Para deshabilitar AlwaysOn, mediante:

    • Administrador de configuración de SQL Server

    • PowerShell

  • Seguimiento: Después de deshabilitar AlwaysOn

Nota importanteImportante

Deshabilite AlwaysOn solamente en una instancia del servidor cada vez. Después de deshabilitar los grupos de disponibilidad de AlwaysOn, espere hasta que se haya reiniciado el servicio SQL Server antes de seguir con otra instancia del servidor.

Recomendaciones

Antes de deshabilitar AlwaysOn en una instancia de servidor, se recomienda realizar lo siguiente:

  1. Si la instancia de servidor hospeda actualmente la réplica principal de un grupo de disponibilidad que desea conservar, se recomienda realizar una conmutación por error manual del grupo de disponibilidad a una réplica secundaria sincronizada, si es posible. Para obtener más información, vea Realizar una conmutación por error manual planeada de un grupo de disponibilidad (SQL Server).

  2. Quite todas las réplicas secundarias locales. Para obtener más información, vea Quitar una réplica secundaria de un grupo de disponibilidad (SQL Server).

Usar el Administrador de configuración de SQL Server

Para deshabilitar AlwaysOn

  1. Conéctese al nodo de clúster de conmutación por error de Windows Server (WSFC) que hospeda la instancia de SQL Server donde desea deshabilitar los grupos de disponibilidad de AlwaysOn.

  2. En el menú Inicio, seleccione Todos los programas, Microsoft SQL Server 2012 , Herramientas de configuración y haga clic en Administrador de configuración de SQL Server.

  3. En el Administrador de configuración de SQL Server, haga clic en Servicios de SQL Server, haga clic con el botón secundario en SQL Server (<instance name>), donde <instance name> es el nombre de una instancia del servidor local para la que desea deshabilitar los grupos de disponibilidad de AlwaysOn, y haga clic en Propiedades.

  4. En la pestaña Alta disponibilidad de AlwaysOn, desactive la casilla Habilitar los grupos de disponibilidad de AlwaysOn y haga clic en Aceptar.

    El administrador de configuración de SQL Server guarda los cambios y reinicie el servicio SQL Server. Cuando se reinicia el servicio SQL Server, AlwaysOn estará deshabilitado y la propiedad del servidor IsHadrEnabled se establecerá en 0 para indicar que los grupos de disponibilidad de AlwaysOn están deshabilitados.

  5. Se recomienda leer la información de Seguimiento: Después de deshabilitar AlwaysOn, más adelante en este tema.

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Usar SQL Server PowerShell

Para deshabilitar AlwaysOn

  1. Cambie el directorio (cd) a una instancia del servidor habilitada actualmente que desee deshabilitar para los grupos de disponibilidad de AlwaysOn.

  2. Use el cmdlet Disable-SqlAlwaysOn para habilitar los grupos de disponibilidad de AlwaysOn.

    Por ejemplo, el comando siguiente deshabilita los grupos de disponibilidad AlwaysOn en una instancia de SQL Server (Computer\Instance). Este comando requiere reiniciar la instancia y le pedirá que confirme este reinicio.

    Disable-SqlAlwaysOn -Path SQLSERVER:\SQL\Computer\Instance
    
    Nota importanteImportante

    Para obtener información sobre cómo controlar si el cmdlet Disable-SqlAlwaysOn reinicia el servicio SQL Server, vea ¿Cuándo reinicia un cmdlet el servicio SQL Server?, más adelante en este tema.

    Para ver la sintaxis de un cmdlet, use el cmdlet Get-Help en el entorno de SQL Server PowerShell. Para obtener más información, vea Obtener ayuda de SQL Server PowerShell.

Para configurar y usar el proveedor de SQL Server PowerShell

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Seguimiento: Después de deshabilitar AlwaysOn

Después de deshabilitar grupos de disponibilidad de AlwaysOn, se debe reiniciar la instancia de SQL Server. El Administrador de configuración de SQL reinicia la instancia de servidor automáticamente. Sin embargo, si utilizó el cmdlet Disable-SqlAlwaysOn, deberá reiniciar la instancia de servidor manualmente. Para obtener más información, vea sqlservr (aplicación).

En la instancia del servidor reiniciada:

  • Las bases de datos de disponibilidad no se inician en el arranque de SQL Server, por lo que están inaccesibles.

  • La única instrucción Transact-SQL compatible con AlwaysOn es DROP AVAILABILITY GROUP. Las opciones CREATE AVAILABILITY GROUP, ALTER AVAILABILITY GROUP y SET HADR de ALTER DATABASE no se admiten.

  • Los metadatos de SQL Server y los datos de configuración de Grupos de disponibilidad AlwaysOn en WSFC no se ven afectados al deshabilitar los grupos de disponibilidad de AlwaysOn.

Si deshabilita de forma permanente grupos de disponibilidad de AlwaysOn en cada instancia de servidor que hospeda una réplica de disponibilidad para uno o varios grupos de disponibilidad, se recomienda completar los pasos siguientes:

  1. Si no quitó las réplicas de disponibilidad locales antes de deshabilitar AlwaysOn, elimine (quite) cada grupo de disponibilidad para el que la instancia de servidor hospeda una réplica de disponibilidad. Para obtener información sobre cómo eliminar un grupo de disponibilidad, vea Quitar un grupo de disponibilidad (SQL Server).

  2. Para quitar los metadatos que quedan atrás, elimine (quite) cada grupo de disponibilidad afectado en una instancia de servidor que forme parte del clúster de WSFC original.

  3. Cualquier base de datos principal continúa estando accesible para todas las conexiones, pero se detiene la sincronización de datos entre las bases de datos primaria y secundaria.

  4. Las bases de datos secundarias entran en el estado RESTORING. Puede eliminarlas o restaurarlas mediante RESTORE WITH RECOVERY. Sin embargo, las bases de datos restauradas ya no participarán en la sincronización de datos del grupo de disponibilidad.

¿Cuándo reinicia un cmdlet el servicio SQL Server?

En una instancia del servidor que se esté ejecutando actualmente, el uso de Enable-SqlAlwaysOn o Disable-SqlAlwaysOn para cambiar el valor actual de AlwaysOn podría provocar que se reinicie el servicio SQL Server. El comportamiento de reinicio depende de las condiciones siguientes:

Parámetro -NoServiceRestart especificado

Parámetro -Force especificado

¿Se ha reiniciado el servicio SQL Server?

No

No

De forma predeterminada. Pero el cmdlet indica lo siguiente:

Para completar esta acción, debemos reiniciar el servicio SQL Server para la instancia del servidor '<instance_name>'. ¿Desea continuar?

[Y] Sí  [N] No  [S] Suspender  [?] Ayuda (el valor predeterminado es 'y'):

Si especifica N o S, el servicio no se reinicia.

No

El servicio se reinicia.

No

El servicio no se reinicia.

El servicio no se reinicia.

Icono de flecha usado con el vínculo Volver al principio[Arriba]

Vea también

Referencia

SERVERPROPERTY (Transact-SQL)

Conceptos

Información general de los grupos de disponibilidad AlwaysOn (SQL Server)