Compartir a través de


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. Al consultar esta vista de administración dinámica en una instancia de servidor que hospeda una réplica secundaria de un grupo de disponibilidad, solo devuelve información local para el grupo de disponibilidad.

Nombre de la columna Tipo de datos Anulable Descripción
replica_id uniqueidentifier No Identificador único de la réplica.
group_id uniqueidentifier No Identificador único del grupo de disponibilidad.
is_local bit No 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 por 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 Rol actual de grupos de disponibilidad AlwaysOn de una réplica local o una réplica remota conectada, una de las siguientes:

0 = Resolución
1 = Principal
2 = Secundario

Para obtener información sobre los roles de grupos de disponibilidad AlwaysOn, consulte ¿Qué es un grupo de disponibilidad AlwaysOn?
role_desc nvarchar(60) Descripción de role, una de las 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 = Error, sin 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 artículo.
operational_state_desc nvarchar(60) Descripción de operational_state, una de las siguientes:

PENDING_FAILOVER

PENDING

ONLINE

OFFLINE

FAILED

FAILED_NO_QUORUM

NULL
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 DISCONNECTED estado depende de su rol: En la réplica principal, si se desconecta una réplica secundaria, 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
recovery_health tinyint Acumulación de la database_state columna de la vista de administración dinámica de sys.dm_hadr_database_replica_states . Estos son 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 0es ).

1 = En línea. Todas las bases de datos combinadas tienen un estado de base de datos de 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 correcto. Al menos una base de datos unida está en estado NOT SYNCHRONIZING .

1 = Parcialmente correcto. Algunas réplicas no están en el estado de sincronización de destino: las réplicas de confirmación sincrónica deben sincronizarse y las réplicas de confirmación asincrónica deben sincronizarse.

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
last_connect_error_number int Número del último error de conexión.
last_connect_error_description nvarchar(1024) Texto del last_connect_error_number mensaje.
last_connect_error_timestamp datetime Marca de tiempo de fecha y hora que indica cuándo se produjo el last_connect_error_number error.
write_lease_remaining_ticks bigint Solamente se identifica con fines informativos. No está soportado. La compatibilidad con versiones posteriores no está garantizada.
current_configuration_commit_start_time_utc datetime Solamente se identifica con fines informativos. No está soportado. La compatibilidad con versiones posteriores no está garantizada.
is_internal bit Solamente se identifica con fines informativos. No está soportado. La compatibilidad con versiones posteriores no está garantizada.
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 database_state columna de la vista de administración dinámica de sys.dm_hadr_database_replica_states . Estos son 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 0es ).

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

NULL: is_local no es 0
synchronization_health tinyint No 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 refleja el estado acumulado menos correcto de las bases de datos en la réplica. Los valores posibles y sus descripciones son:

0 = No correcto. Al menos una base de datos unida está en estado NOT SYNCHRONIZING .

1 = Parcialmente correcto. Algunas réplicas no están en el estado de sincronización de destino: las réplicas de confirmación sincrónica deben sincronizarse y las réplicas de confirmación asincrónica deben sincronizarse.

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.

Roles y estados operativos

El rol , , rolerefleja el estado de una réplica de disponibilidad determinada. El estado operativo, operational_state, describe si la réplica está lista para procesar las solicitudes de cliente para todas las bases de datos de la réplica de disponibilidad. En la tabla siguiente se resumen los estados operativos que son posibles para cada rol: RESOLVING, PRIMARYy SECONDARY.

RESOLVING: cuando una réplica de disponibilidad está en el RESOLVING rol, los estados operativos posibles se muestran en la tabla siguiente.

Estado operativo Descripción
PENDING_FAILOVER El sistema está procesando un comando de conmutación por error para el grupo de disponibilidad.
OFFLINE Todos los datos de configuración de la réplica de disponibilidad se actualizan en el clúster de WSFC y, además, en los metadatos locales, pero el grupo de disponibilidad carece actualmente de una réplica principal.
FAILED Error de lectura durante un intento de recuperar información del clúster de WSFC.
FAILED_NO_QUORUM El nodo WSFC local no tiene quórum. Este estado se deduce.

PRIMARY: cuando una réplica de disponibilidad realiza el PRIMARY rol, actualmente es la réplica principal. Los posibles estados operativos se muestran en la tabla siguiente.

Estado operativo Descripción
PENDING Este estado es transitorio, pero una réplica principal se puede bloquear en este estado si los trabajos no están disponibles para procesar 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 desde el clúster de WSFC.

SECONDARY: cuando una réplica de disponibilidad realiza el SECONDARY rol, actualmente es una réplica secundaria. Los posibles estados operativos se muestran en la tabla siguiente.

Estado operativo Descripción
ONLINE La réplica secundaria local no está conectada a la réplica principal.
FAILED La réplica secundaria local no puede leer ni escribir desde 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

SQL Server 2019 (15.x) y versiones anteriores requieren VIEW SERVER STATE permiso en el servidor.

SQL Server 2022 (16.x) y versiones posteriores requieren VIEW SERVER PERFORMANCE STATE permiso en el servidor.