Delen via


sys.dm_hadr_availability_replica_states (Transact-SQL)

Van toepassing op:SQL Server

Retourneert een rij voor elke lokale replica en een rij voor elke externe replica in dezelfde AlwaysOn-beschikbaarheidsgroep als een lokale replica. Elke rij bevat informatie over de status van een bepaalde replica.

Belangrijk

Als u informatie wilt over elke replica in een bepaalde beschikbaarheidsgroep, voert u een query sys.dm_hadr_availability_replica_states uit op het serverexemplaren waarop de primaire replica wordt gehost. Wanneer u een query uitvoert op deze dynamische beheerweergave op een serverexemplaren die als host fungeert voor een secundaire replica van een beschikbaarheidsgroep, retourneert deze alleen lokale informatie voor de beschikbaarheidsgroep.

Kolomnaam Gegevenstype Nullbaar Description
replica_id uniqueidentifier Nee. Unieke id van de replica.
group_id uniqueidentifier Nee. Unieke id van de beschikbaarheidsgroep.
is_local bit Nee. Of de replica lokaal is, een van de volgende:

0 = Geeft een externe secundaire replica in een beschikbaarheidsgroep aan waarvan de primaire replica wordt gehost door het lokale serverexemplaren. Deze waarde vindt alleen plaats op de primaire replicalocatie.

1 = Geeft een lokale replica aan. Op secundaire replica's is dit de enige beschikbare waarde voor de beschikbaarheidsgroep waartoe de replica behoort.
role tinyint Yes Huidige AlwaysOn-beschikbaarheidsgroepenrol van een lokale replica of een verbonden externe replica, een van:

0 = Oplossen
1 = Primair
2 = Secundair

Zie Wat is een AlwaysOn-beschikbaarheidsgroep?
role_desc nvarchar(60) Yes Beschrijving van role, een van:

RESOLVING
PRIMARY
SECONDARY
operational_state tinyint Yes Huidige operationele status van de replica, een van:

0 = Failover in behandeling
1 = In behandeling
2 = Online
3 = Offline
4 = Mislukt
5 = Mislukt, geen quorum
NULL = Replica is niet lokaal.

Zie Rollen en operationele statussen verderop in dit artikel voor meer informatie.
operational_state_desc nvarchar(60) Yes Beschrijving van operational_state, een van:

PENDING_FAILOVER

PENDING

ONLINE

OFFLINE

FAILED

FAILED_NO_QUORUM

NULL
connected_state tinyint Yes Of een secundaire replica momenteel is verbonden met de primaire replica. De mogelijke waarden worden hieronder weergegeven met hun beschrijvingen.

0 = Verbinding verbroken. Het antwoord van een beschikbaarheidsreplica op de status is afhankelijk van de DISCONNECTED rol: Als een secundaire replica is verbroken, worden de secundaire databases gemarkeerd als NOT SYNCHRONIZED op de primaire replica, die wacht totdat de secundaire replica opnieuw verbinding maakt; Bij het detecteren dat de verbinding met een secundaire replica is verbroken, probeert de secundaire replica opnieuw verbinding te maken met de primaire replica.

1 = Verbonden.

Elke primaire replica houdt de verbindingsstatus voor elke secundaire replica in dezelfde beschikbaarheidsgroep bij. Secundaire replica's houden alleen de verbindingsstatus van de primaire replica bij.
connected_state_desc nvarchar(60) Yes Beschrijving van connection_state, een van:

DISCONNECTED
CONNECTED
recovery_health tinyint Yes Samenvouwen van de database_state kolom van de sys.dm_hadr_database_replica_states dynamische beheerweergave. Hier volgen de mogelijke waarden en de bijbehorende beschrijvingen.

0 = Wordt uitgevoerd. Ten minste één gekoppelde database heeft een andere databasestatus dan ONLINE (database_state niet 0).

1 = Online. Alle gekoppelde databases hebben de databasestatus ONLINE (database_state is 0).

NULL: is_local = 0
recovery_health_desc nvarchar(60) Yes Beschrijving van recovery_health, een van:

ONLINE_IN_PROGRESS
ONLINE
NULL
synchronization_health tinyint Yes Weerspiegelt een samenvoeging van de databasesynchronisatiestatus (synchronization_state) van alle gekoppelde beschikbaarheidsdatabases (ook wel replica's genoemd) en de beschikbaarheidsmodus van de replica (synchroon doorvoeren of asynchrone doorvoermodus). Het samenvouwen weerspiegelt de minst gezonde status van de databases op de replica. Hieronder ziet u de mogelijke waarden en de bijbehorende beschrijvingen.

0 = Niet in orde. Ten minste één gekoppelde database heeft de NOT SYNCHRONIZING status.

1 = Gedeeltelijk gezond. Sommige replica's hebben niet de doelsynchronisatiestatus: synchrone doorvoerreplica's moeten worden gesynchroniseerd en asynchrone doorvoerreplica's moeten worden gesynchroniseerd.

2 = In orde. Alle replica's hebben de doelsynchronisatiestatus: synchrone doorvoerreplica's worden gesynchroniseerd en asynchrone doorvoerreplica's worden gesynchroniseerd.
synchronization_health_desc nvarchar(60) Yes Beschrijving van synchronization_health, een van:

NOT_HEALTHY
PARTIALLY_HEALTHY
HEALTHY
last_connect_error_number int Yes Het nummer van de laatste verbindingsfout.
last_connect_error_description Nvarchar(1024) Yes Tekst van het last_connect_error_number bericht.
last_connect_error_timestamp datetime Yes Datum- en tijdstempel die aangeeft wanneer de last_connect_error_number fout is opgetreden.
write_lease_remaining_ticks bigint Yes Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.
current_configuration_commit_start_time_utc datetime Yes Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.
is_internal bit Yes Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.
operational_state_desc nvarchar(60) Yes Beschrijving van operational_state, een van:

PENDING_FAILOVER
PENDING
ONLINE
OFFLINE
FAILED
FAILED_NO_QUORUM
NULL
recovery_health tinyint Yes Samenvouwen van de database_state kolom van de sys.dm_hadr_database_replica_states dynamische beheerweergave. Hier volgen de mogelijke waarden en de bijbehorende beschrijvingen.

0 = Wordt uitgevoerd. Ten minste één gekoppelde database heeft een andere databasestatus dan ONLINE (database_state niet 0).

1 = Online. Alle gekoppelde databases hebben de databasestatus ONLINE (database_state is 0).

NULL: is_local is niet 0
synchronization_health tinyint Nee. Weerspiegelt een samenvoeging van de databasesynchronisatiestatus (synchronization_state) van alle gekoppelde beschikbaarheidsdatabases (ook wel replica's genoemd) en de beschikbaarheidsmodus van de replica (synchroon doorvoeren of asynchrone doorvoermodus). Het samenvouwen weerspiegelt de minst gezonde status van de databases op de replica. De mogelijke waarden en hun beschrijvingen zijn:

0 = Niet in orde. Ten minste één gekoppelde database heeft de NOT SYNCHRONIZING status.

1 = Gedeeltelijk gezond. Sommige replica's hebben niet de doelsynchronisatiestatus: synchrone doorvoerreplica's moeten worden gesynchroniseerd en asynchrone doorvoerreplica's moeten worden gesynchroniseerd.

2 = In orde. Alle replica's hebben de doelsynchronisatiestatus: synchrone doorvoerreplica's worden gesynchroniseerd en asynchrone doorvoerreplica's worden gesynchroniseerd.

Rollen en operationele statussen

De rol, rolegeeft de status van een bepaalde beschikbaarheidsreplica weer. De operationele status, operational_statebeschrijft of de replica gereed is voor het verwerken van clientaanvragen voor alle databases van de beschikbaarheidsreplica. De volgende tabel bevat een overzicht van de operationele statussen die mogelijk zijn voor elke rol: RESOLVING, PRIMARYen SECONDARY.

RESOLVING: Wanneer een beschikbaarheidsreplica RESOLVING de rol heeft, worden de mogelijke operationele statussen weergegeven in de volgende tabel.

Operationele status Description
PENDING_FAILOVER Het systeem verwerkt een failoveropdracht voor de beschikbaarheidsgroep.
OFFLINE Alle configuratiegegevens voor de beschikbaarheidsreplica worden bijgewerkt op het WSFC-cluster en, ook in lokale metagegevens, maar de beschikbaarheidsgroep mist momenteel een primaire replica.
FAILED Er is een leesfout opgetreden tijdens een poging om informatie op te halen uit het WSFC-cluster.
FAILED_NO_QUORUM Het lokale WSFC-knooppunt heeft geen quorum. Deze status wordt afgeleid.

PRIMARY: Wanneer een beschikbaarheidsreplica de PRIMARY rol uitvoert, is dit momenteel de primaire replica. De mogelijke operationele statussen worden weergegeven in de volgende tabel.

Operationele status Description
PENDING Deze status is tijdelijk, maar een primaire replica kan in deze status worden vastgelopen als werkrollen niet beschikbaar zijn voor het verwerken van aanvragen.
ONLINE De resource van de beschikbaarheidsgroep is online en alle databasewerkthreads zijn opgehaald.
FAILED De beschikbaarheidsreplica kan niet lezen naar of schrijven vanuit het WSFC-cluster.

SECONDARY: Wanneer een beschikbaarheidsreplica de SECONDARY rol uitvoert, is dit momenteel een secundaire replica. De mogelijke operationele statussen worden weergegeven in de onderstaande tabel.

Operationele status Description
ONLINE De lokale secundaire replica is verbonden met de primaire replica.
FAILED De lokale secundaire replica kan niet lezen naar of schrijven vanuit het WSFC-cluster.
NULL Op een primaire replica wordt deze waarde geretourneerd wanneer de rij is gekoppeld aan een secundaire replica.

Permissions

SQL Server 2019 (15.x) en eerdere versies vereisen VIEW SERVER STATE machtiging op de server.

VOOR SQL Server 2022 (16.x) en latere versies is VIEW SERVER PERFORMANCE STATE machtiging op de server vereist.