sys.dm_hadr_availability_replica_states (Transact-SQL)

Se aplica a:SQL Server

Devuelve una fila para cada réplica local y una fila para cada réplica remota en el mismo grupo de disponibilidad Always On que una réplica local. Cada fila contiene información sobre el estado de una réplica determinada.

Importante

Para obtener información sobre cada réplica de un grupo de disponibilidad determinado, consulte sys.dm_hadr_availability_replica_states en la instancia del servidor que hospeda la réplica principal. Cuando se consulta en una instancia de servidor que hospeda una réplica secundaria de un grupo de disponibilidad, esta vista de administración dinámica devuelve solo información local para el grupo de disponibilidad.

Nombre de la columna Tipo de datos Descripción
replica_id uniqueidentifier Identificador único de la réplica.
group_id uniqueidentifier Identificador único del grupo de disponibilidad.
is_local bit Si la réplica es local, una de las siguientes:

0 = Indica una réplica secundaria remota en un grupo de disponibilidad cuya réplica principal está hospedada en la instancia del servidor local. Este valor solo se produce en la ubicación de la réplica principal.

1 = Indica una réplica local. En las réplicas secundarias, es el único valor disponible para el grupo de disponibilidad al que pertenece la réplica.
role tinyint El rol actual Always On grupos de disponibilidad de una réplica local o una réplica remota conectada, una de las siguientes:

0 = Resolver

1 = Principal

2 = Secundario

Para más información sobre los roles de los grupos de disponibilidad AlwaysOn, consulte Introducción a los grupos de disponibilidad AlwaysOn (SQL Server).
role_desc nvarchar(60) Descripción del rol, uno de los siguientes:

RESOLVING

PRIMARY

SECONDARY
operational_state tinyint Estado operativo actual de la réplica, uno de los siguientes:

0 = Conmutación por error pendiente

1 = Pendiente

2 = En línea

3 = Sin conexión

4 = Error

5 = No se pudo establecer quórum

NULL = La réplica no es local.

Para obtener más información, vea Roles y estados operativos, más adelante en este tema.
operational_state_desc nvarchar(60) Descripción de operational_state, una de las siguientes:

PENDING_FAILOVER

PENDING

ONLINE

OFFLINE

FAILED

FAILED_NO_QUORUM

NULL
recovery_health tinyint Acumulación de la columna database_state de la vista de administración dinámica de sys.dm_hadr_database_replica_states . A continuación se muestran los valores posibles y sus descripciones.

0: En curso. Al menos una base de datos unida tiene un estado de base de datos distinto de ONLINE (database_state no es 0).

1 : En línea. Todas las bases de datos unidas tienen un estado de base de datos ONLINE (database_state es 0).

NULL: is_local = 0
recovery_health_desc nvarchar(60) Descripción de recovery_health, una de las siguientes:

ONLINE_IN_PROGRESS

ONLINE

NULL
synchronization_health tinyint Refleja un resumen del estado de sincronización de la base de datos (synchronization_state)de todas las bases de datos de disponibilidad unidas (también conocidas como réplicas) y el modo de disponibilidad de la réplica (modo de confirmación sincrónica o confirmación asincrónica). El paquete acumulativo reflejará el estado acumulado menos correcto de las bases de datos en la réplica. A continuación se muestran los valores posibles y sus descripciones.

0: No es correcto. El estado de al menos una de las bases de datos unidas es NOT SYNCHRONIZING.

1 : Parcialmente correcto. Algunas réplicas no están en el estado de sincronización del destino: las réplicas de confirmación sincrónica deben ser sincronizadas y las réplicas de confirmación asincrónica deberían estar sincronizándose.

2 : Correcto. Todas las réplicas están en el estado de sincronización del destino: las réplicas de confirmación sincrónica se sincronizan y las réplicas de confirmación asincrónica se están sincronizando.
synchronization_health_desc nvarchar(60) Descripción de synchronization_health, una de las siguientes:

NOT_HEALTHY

PARTIALLY_HEALTHY

HEALTHY
connected_state tinyint Si una réplica secundaria está conectada actualmente a la réplica principal. Los valores posibles se muestran a continuación con sus descripciones.

0 : Desconectado. La respuesta de una réplica de disponibilidad al estado DISCONNECTED depende de su rol: En la réplica principal, si una réplica secundaria está desconectada, sus bases de datos secundarias se marcan como NOT SYNCHRONIZED en la réplica principal, que espera a que la secundaria se vuelva a conectar; En una réplica secundaria, al detectar que está desconectada, la réplica secundaria intenta volver a conectarse a la réplica principal.

1 : Conectado.

Cada réplica principal realiza un seguimiento del estado de conexión de cada réplica secundaria en el mismo grupo de disponibilidad. Las réplicas secundarias realizan un seguimiento del estado de solo la réplica principal.
connected_state_desc nvarchar(60) Descripción de connection_state, una de las siguientes:

DISCONNECTED

CONNECTED
last_connect_error_number int Número del último error de conexión.
last_connect_error_description nvarchar(1024) Texto del mensaje de last_connect_error_number .
last_connect_error_timestamp datetime Marca de tiempo de fecha y hora que indica cuándo se produjo el error de last_connect_error_number .

Roles y estados operativos

El rol, rol, refleja el estado de una réplica de disponibilidad determinada y el estado operativo, operational_state, describe si la réplica está lista para procesar las solicitudes de cliente para toda la base de datos de la réplica de disponibilidad. A continuación se muestra un resumen de los estados operativos que son posibles para cada rol: RESOLVING, PRIMARY y SECONDARY.

RESOLVER: Cuando una réplica de disponibilidad se encuentra en el rol RESOLVING, los posibles estados operativos se muestran en la tabla siguiente.

Estado de funcionamiento Descripción
PENDING_FAILOVER Se procesa un comando de conmutación por error para el grupo de disponibilidad.
OFFLINE Todos los datos de configuración para la réplica de disponibilidad se han actualizado en el clúster de WSFC y, además, en los metadatos locales, pero el grupo de disponibilidad no tiene actualmente una réplica principal.
FAILED Se ha producido un error de lectura al intentar recuperar información del clúster de WSFC.
FAILED_NO_QUORUM El nodo WSFC local no tiene cuórum. Es un estado deducido.

PRIMARIA: Cuando una réplica de disponibilidad está realizando el rol PRIMARY, actualmente es la réplica principal. Los posibles estados operativos se muestran en la tabla siguiente.

Estado de funcionamiento Descripción
PENDING Es un estado transitorio, pero una réplica principal se puede bloquear en este estado si los subprocesos de trabajo no están disponibles para procesar las solicitudes.
ONLINE El recurso de grupo de disponibilidad está en línea, y todos los subprocesos de trabajo de la base de datos se han seleccionado.
FAILED La réplica de disponibilidad no puede leer ni escribir en el clúster de WSFC.

SECUNDARIA: Cuando una réplica de disponibilidad está realizando el rol SECUNDARIO, actualmente es una réplica secundaria. Los posibles estados operativos se muestran en la tabla siguiente.

Estado de funcionamiento Descripción
ONLINE La réplica secundaria local está conectada a la réplica principal.
FAILED La réplica secundaria local no puede leer ni escribir en el clúster de WSFC.
NULL En una réplica principal, se devuelve este valor cuando la fila está relacionada con una réplica secundaria.

Permisos

es necesario contar con el permiso VIEW SERVER STATE en el servidor.

Permisos para SQL Server 2022 y versiones posteriores

Requiere el permiso VIEW SERVER PERFORMANCE STATE en el servidor.

Vea también

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