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 | Rol actual de grupos de disponibilidad AlwaysOn 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 | Paquete acumulativo de la columna database_state 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 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 (confirmación sincrónica o modo de 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. 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 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 |
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 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.
RESOLVING: cuando una réplica de disponibilidad se encuentra en el rol RESOLVING, los estados operativos posibles se muestran en la tabla siguiente.
Estado operativo | 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 quórum. Es un estado deducido. |
PRIMARY: cuando una réplica de disponibilidad realiza el rol PRIMARY, actualmente es la réplica principal. Los posibles estados operativos se muestran en la tabla siguiente.
Estado operativo | 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. |
SECONDARY: cuando una réplica de disponibilidad realiza el rol SECONDARY, 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 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 VER ESTADO DE RENDIMIENTO DEL SERVIDOR en el servidor.
Consulte también
Información general de los grupos de disponibilidad AlwaysOn (SQL Server)
Supervisar grupos de disponibilidad (Transact-SQL)