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:
Procedimientos para:
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
En el Explorador de objetos, haga clic con el botón derecho en la instancia del servidor y haga clic en Propiedades.
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
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
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.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
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.
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.
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.Seleccione la pestaña Alta disponibilidad de AlwaysOn .
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.
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
Cambie el directorio (
cd
) a una instancia del servidor que desee habilitar para los grupos de disponibilidad de AlwaysOn.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
Antes de deshabilitar AlwaysOn:
Para deshabilitar AlwaysOn, use:
Seguimiento: Después de deshabilitar 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:
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).
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
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.
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.
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.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.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
Cambie el directorio (
cd
) a una instancia de servidor habilitada actualmente que quiera desactivar para los grupos de disponibilidad AlwaysOn.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:
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).
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.
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.
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 | Sí | El servicio se reinicia. |
Sí | No | El servicio no se reinicia. |
Sí | Sí | El servicio no se reinicia. |
Consulte también
Información general de los grupos de disponibilidad AlwaysOn (SQL Server)
SERVERPROPERTY (Transact-SQL)