Compartir a través de


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

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

Importante

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

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 Features Supported by the Editions of SQL Server 2014.

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

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

Seguridad

Aunque los grupos de disponibilidad AlwaysOn están habilitados en una instancia de SQL Server, la instancia del servidor tiene control total en el 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.

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

Uso de SQL Server Management Studio

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

  1. En el Explorador de objetos, haga clic con el botón derecho 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:

    • Truesi los grupos de disponibilidad de AlwaysOn están habilitados

    • Falsesi los grupos de disponibilidad de AlwaysOn están deshabilitados.

Usar Transact-SQL

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

  1. Use la siguiente instrucción SERVERPROPERTY :

    SELECT SERVERPROPERTY ('IsHadrEnabled');  
    

    El valor de la IsHadrEnabled propiedad de servidor indica si una instancia de SQL Server está habilitada para los grupos de disponibilidad AlwaysOn, como se indica a continuación:

    • 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 sobre la IsHadrEnabled propiedad de servidor, vea SERVERPROPERTY (Transact-SQL).

Mediante PowerShell

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

  1. Establezca el valor predeterminado (cd) en la instancia del servidor (por ejemplo \SQL\NODE1\DEFAULT, ) en la que desea determinar si los grupos de disponibilidad AlwaysOn están habilitados.

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

    Get-Item . | Select IsHadrEnabled  
    

    Nota:

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

Para configurar y usar el proveedor de SQL Server PowerShell

Habilitación de grupos de disponibilidad AlwaysOn

Para habilitar AlwaysOn, use:

Usar el Administrador de configuración de SQL Server

Para habilitar grupos de disponibilidad AlwaysOn

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

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

  3. En Administrador de configuración de SQL Server, haga clic en Servicios de SQL Server, haga clic con el botón derecho en SQL Server (instance name><), donde <instance name> es el nombre de una instancia de servidor local para la que desea habilitar grupos de disponibilidad 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 el campo está en blanco, esta instancia de servidor no admite actualmente los Grupos de disponibilidad AlwaysOn. El equipo local no es un nodo de clúster, se ha apagado el clúster de WSFC o esta edición de SQL Server 2014 que no admite grupos de disponibilidad AlwaysOn.

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

    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. Cuando se reinicie el servicio SQL Server, AlwaysOn se habilitará y la IsHadrEnabled propiedad del servidor se establecerá en 1.

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 Get-Help cmdlet en el entorno de SQL Server PowerShell. Para más información, consulte Get Help SQL Server PowerShell.

    Nota:

    Para obtener información sobre cómo controlar si el cmdlet reinicia el Enable-SqlAlwaysOn servicio SQL Server, vea When a Cmdlet Restart the SQL Server Service?, más adelante en este tema.

Para configurar y usar el proveedor de SQL Server PowerShell

Ejemplo: Enable-SqlAlwaysOn

El siguiente comando de PowerShell habilita los grupos de disponibilidad AlwaysOn en una instancia de SQL Server (instancia de equipo\).

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

Deshabilitar los grupos de disponibilidad de AlwaysOn

Importante

Deshabilite AlwaysOn solamente en una instancia del servidor cada vez. Después de deshabilitar los grupos de disponibilidad AlwaysOn, espere hasta que se haya reiniciado el servicio SQL Server antes de continuar con otra instancia de 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, consulte 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, consulte 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 Clústeres de conmutación por error de Windows Server (WSFC) que hospeda la instancia de SQL Server donde desea deshabilitar los grupos de disponibilidad AlwaysOn.

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

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

  4. En la pestañaAlta 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 reinicia el servicio de SQL Server. Cuando se reinicie el servicio SQL Server, AlwaysOn se deshabilitará y la IsHadrEnabled propiedad del servidor se establecerá en 0 para indicar que los grupos de disponibilidad AlwaysOn están deshabilitados.

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

Usar SQL Server PowerShell

Para deshabilitar AlwaysOn

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

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

    Por ejemplo, el siguiente comando deshabilita los grupos de disponibilidad de 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  
    

    Importante

    Para obtener información sobre cómo controlar si el cmdlet reinicia el Disable-SqlAlwaysOn servicio SQL Server, vea When a Cmdlet Restart the SQL Server Service?, más adelante en este tema.

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

Para configurar y usar el proveedor de SQL Server PowerShell

Seguimiento: Después de deshabilitar AlwaysOn

Después de deshabilitar los grupos de disponibilidad 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 más información, consulte sqlservr Application.

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 admitida 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 los grupos de disponibilidad AlwaysOn en WSFC no se ven afectados al deshabilitar los grupos de disponibilidad 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, consulte 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 de SQL Server?
No No De forma predeterminada. Pero el cmdlet indica lo siguiente:

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

[Y] Sí [N] No [S] Suspender [?] Ayuda (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.

Consulte también

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