sys.dm_database_replica_states (Azure SQL Database)
van toepassing op:Azure SQL Database
Azure SQL Managed Instance-
Retourneert statusinformatie voor elke database die deelneemt aan primaire en secundaire replica's. Retourneert op een secundaire replica één rij voor elke secundaire database op het exemplaar. Retourneert op de primaire replica één rij voor de primaire database en een extra rij voor elke secundaire database.
Belangrijk
Afhankelijk van de actie en statussen op een hoger niveau, zijn databasestatusgegevens mogelijk niet beschikbaar of verouderd. Bovendien hebben de waarden alleen lokale relevantie.
Kolomnaam | Gegevenstype | Beschrijving (op primaire replica) |
---|---|---|
database_id | Id van de database. In Azure SQL Database zijn de waarden uniek binnen één database of een elastische pool, maar niet binnen een logische server. |
|
group_id | uniqueidentifier- | Id van de beschikbaarheidsgroep waartoe de database behoort. |
replica_id | uniqueidentifier- | Id van de beschikbaarheidsreplica binnen de beschikbaarheidsgroep. |
group_database_id | uniqueidentifier- | Id van de database binnen de beschikbaarheidsgroep. Deze id is identiek op elke replica waaraan deze database is gekoppeld. |
is_local | bit | Of de beschikbaarheidsdatabase lokaal is, een van de volgende: 0 = De database is niet lokaal voor het SQL Server-exemplaar. 1 = De database is lokaal voor het serverexemplaren. |
is_primary_replica | bit | Retourneert 1 als de replica primair is of 0 als het een secundaire replica is in de beschikbaarheidsgroep waartoe de database behoort. Dit verwijst niet naar de primaire of secundaire database in een gedistribueerde beschikbaarheidsgroep of een actieve geo-replicatierelatie. Van toepassing op: SQL Server 2014 (12.x) en latere versies. |
synchronization_state | kleine | Status van gegevensverplaatsing, een van de volgende waarden. 0 = Niet synchroniseren. Voor een primaire database geeft u aan dat de database niet gereed is om het transactielogboek te synchroniseren met de bijbehorende secundaire databases. Voor een secundaire database geeft u aan dat de database geen logboeksynchronisatie heeft gestart vanwege een verbindingsprobleem, wordt onderbroken of overgangsstatussen doorloopt tijdens het opstarten of een functieswitch. 1 = Synchroniseren. Voor een primaire database geeft u aan dat de database gereed is om een scanaanvraag van een secundaire database te accepteren. Voor een secundaire database geeft u aan dat actieve gegevensverplaatsing plaatsvindt voor de database. 2 = Gesynchroniseerd. In een primaire database wordt GESYNCHRONISEERD weergegeven in plaats van SYNCHRONISEREN. Een secundaire database met synchrone doorvoer wordt gesynchroniseerd wanneer in de lokale cache wordt opgegeven dat de database gereed is voor failover en wordt gesynchroniseerd. 3 = Terugdraaien. Geeft de fase in het ongedaan maken aan wanneer een secundaire database actief pagina's ophaalt uit de primaire database. Belangrijk: Wanneer een database op een secundaire replica de status HERSTELLEN heeft, blijft de database in een toestand waarin deze niet kan worden gestart als primaire database, wanneer failover naar de secundaire replica wordt afgedwongen. De database moet opnieuw verbinding maken als een secundaire database of u moet nieuwe logboekrecords toepassen vanuit een logboekback-up. 4 = Initialiseren. Geeft de fase van ongedaan maken aan wanneer het transactielogboek dat is vereist voor een secundaire database om de ongedaan maken LSN in te halen, wordt verzonden en beveiligd op een secundaire replica. Belangrijk: Wanneer een database op een secundaire replica de status INITIALISEREN heeft, blijft de database in een toestand waarin de database niet kan worden gestart als een primaire database. De database moet opnieuw verbinding maken als een secundaire database of u moet nieuwe logboekrecords toepassen vanuit een logboekback-up. |
synchronization_state_desc | nvarchar(60) | Beschrijving van de status van gegevensverplaatsing, een van: - NIET SYNCHRONISEREN -SYNCHRONISEREN -GESYNCHRONISEERD -TERUGKEREN -INITIALISEREN |
is_commit_participant | bit | 0 = Transactiedoorvoering wordt niet gesynchroniseerd met betrekking tot deze database. 1 = Transactiedoorvoering wordt gesynchroniseerd met betrekking tot deze database. Voor een database op een asynchrone doorvoerbeschikbaarheidsreplica is deze waarde altijd 0. Voor een database op een synchrone doorvoerbeschikbaarheidsreplica is deze waarde alleen nauwkeurig voor de primaire database. |
synchronization_health | kleine | Geeft het snijpunt weer van de synchronisatiestatus van een database die is gekoppeld aan de beschikbaarheidsgroep op de beschikbaarheidsreplica en de beschikbaarheidsmodus van de beschikbaarheidsreplica (synchrone doorvoer- of asynchrone doorvoermodus), een van de volgende waarden. 0 = Niet in orde. De synchronization_state van de database is 0 (NIET SYNCHROON).1 = Gedeeltelijk gezond. Een database op een synchrone doorvoerbeschikbaarheidsreplica wordt als gedeeltelijk in orde beschouwd als synchronization_state 1 is (SYNCHROON).2 = In orde. Een database op een synchrone doorvoerbeschikbaarheidsreplica wordt als in orde beschouwd als synchronization_state 2 (GESYNCHRONISEERD) is en een database op een asynchrone doorvoerbeschikbaarheidsreplica als in orde wordt beschouwd als synchronization_state 1 is (SYNCHROON). |
synchronization_health_desc | nvarchar(60) | Beschrijving van de synchronization_health van de beschikbaarheidsdatabase.- NOT_HEALTHY - PARTIALLY_HEALTHY -GEZOND |
database_state | kleine | 0 = Online 1 = Herstellen 2 = Herstellen 3 = Herstel in behandeling 4 = Verdachte 5 = Noodgeval 6 = Offline Opmerking: hetzelfde als de kolom state in sys.databases . |
database_state_desc | nvarchar(60) | Beschrijving van de database_state van de beschikbaarheidsreplica.-ONLINE -HERSTELLEN -HERSTELLEN - RECOVERY_PENDING -VERDENKEN -NOODSITUATIE -OFFLINE Opmerking: hetzelfde als de kolom state_desc in sys.databases . |
is_suspended | bit | Databasestatus, een van de volgende: 0 = Hervat 1 = Onderbroken |
suspend_reason | kleine | Als de database is onderbroken, is de reden voor de onderbroken status een van de volgende: 0 = Gebruikersactie 1 = Onderbreken van partner 2 = Opnieuw 3 = Vastleggen 4 = Toepassen 5 = Opnieuw opstarten 6 = Ongedaan maken 7 = Opnieuwvalidatie 8 = Fout in de berekening van het synchronisatiepunt secundaire replica |
suspend_reason_desc | nvarchar(60) | Beschrijving van de reden van de onderbroken status van de database, een van: SUSPEND_FROM_USER = Een gebruiker heeft de gegevensverplaatsing handmatig opgeschort SUSPEND_FROM_PARTNER = De databasereplica wordt onderbroken na een geforceerde failover SUSPEND_FROM_REDO = Er is een fout opgetreden tijdens de herfase SUSPEND_FROM_APPLY = Er is een fout opgetreden bij het schrijven van het logboek naar bestand (zie foutenlogboek) SUSPEND_FROM_CAPTURE = Er is een fout opgetreden tijdens het vastleggen van logboeken op de primaire replica SUSPEND_FROM_RESTART = De databasereplica is onderbroken voordat de database opnieuw werd opgestart (zie het foutenlogboek) SUSPEND_FROM_UNDO = Er is een fout opgetreden tijdens de fase ongedaan maken (zie foutenlogboek) SUSPEND_FROM_REVALIDATION = Logboekwijziging komt niet overeen bij opnieuw verbinden (zie foutenlogboek) SUSPEND_FROM_XRF_UPDATE = Kan het algemene logboekpunt niet vinden (zie foutenlogboek) |
recovery_lsn | numeriek(25,0) | Op de primaire replica schrijft het einde van het transactielogboek voordat de primaire database nieuwe logboekrecords schrijft na herstel of failover. Als voor een bepaalde secundaire database deze waarde kleiner is dan de huidige geharde LSN (last_hardened_lsn ), is recovery_lsn de waarde waarnaar deze secundaire database opnieuw moet synchroniseren (dat wil gezegd, om terug te keren naar en opnieuw te initialiseren). Als deze waarde groter is dan of gelijk is aan de huidige geharde LSN, is hersynchronisatie niet nodig en zou het niet gebeuren.recovery_lsn weerspiegelt een logboekblok-id die is opgevuld met nullen. Het is geen werkelijk logboekreeksnummer (LSN). |
truncation_lsn | numeriek(25,0) | Op de primaire replica geeft voor de primaire database de minimale afkapping van logboeken weer voor alle bijbehorende secundaire databases. Als het afkappen van lokale logboeken wordt geblokkeerd (bijvoorbeeld door een back-upbewerking), is deze LSN mogelijk hoger dan de lokale afkappingSN. Voor een bepaalde secundaire database wordt het afkappingspunt van die database weergegeven. truncation_lsn een logboekblok-id weerspiegelt die is opgevuld met nullen. Het is geen werkelijk volgnummer voor logboeken. |
last_sent_lsn | numeriek(25,0) | De logboekblok-id die het punt aangeeft waartoe alle logboekblokken zijn verzonden door de primaire. Dit is de id van het volgende logboekblok dat wordt verzonden, in plaats van de id van het laatst verzonden logboekblok.last_sent_lsn weerspiegelt een logboekblok-id die is opgevuld met nullen. Het is geen werkelijk volgnummer voor logboeken. |
last_sent_time | datum/tijd- | Tijdstip waarop het laatste logboekblok is verzonden. |
last_received_lsn | numeriek(25,0) | Logboekblok-id die het punt aangeeft waartoe alle logboekblokken zijn ontvangen door de secundaire replica die als host fungeert voor deze secundaire database.last_received_lsn weerspiegelt een logboekblok-id die is opgevuld met nullen. Het is geen werkelijk volgnummer voor logboeken. |
last_received_time | datum/tijd- | De tijd waarop de logboekblok-id in het laatste ontvangen bericht is gelezen op de secundaire replica. |
last_hardened_lsn | numeriek(25,0) | Begin van het logboekblok met de logboekrecords van de laatste beperkte LSN op een secundaire database. Op een asynchrone primaire database of in een synchrone doorvoerdatabase waarvan het huidige beleid vertraging is, is de waarde NULL. Voor andere synchrone primaire databases geeft last_hardened_lsn het minimum aan van de beperkte LSN voor alle secundaire databases.Opmerking: last_hardened_lsn een logboekblok-id weerspiegelt die is opgevuld met nullen. Het is geen werkelijk volgnummer voor logboeken. |
last_hardened_time | datum/tijd- | Op een secundaire database, de tijd van de logboekblok-id voor de laatst beperkte LSN (last_hardened_lsn ). In een primaire database geeft u de tijd weer die overeenkomt met minimaal beperkte LSN. |
last_redone_lsn | numeriek(25,0) | Het werkelijke logboekvolgordenummer van de laatste logboekrecord die opnieuw is uitgevoerd op de secundaire database.
last_redone_lsn is altijd minder dan last_hardened_lsn . |
last_redone_time | datum/tijd- | Tijdstip waarop de laatste logboekrecord opnieuw is uitgevoerd op de secundaire database. |
log_send_queue_size | grote | De hoeveelheid logboekrecords van de primaire database die niet naar de secundaire databases is verzonden, in kilobytes (KB). |
log_send_rate | grote | Gemiddelde snelheid waarmee het primaire replica-exemplaar gegevens heeft verzonden tijdens de laatste actieve periode, in kilobytes (KB)/seconde. |
redo_queue_size | grote | De hoeveelheid logboekrecords in de logboekbestanden van de secundaire replica die nog niet opnieuw is uitgevoerd, in kilobytes (KB). |
redo_rate | grote | Gemiddelde snelheid waarmee de logboekrecords opnieuw worden uitgevoerd op een bepaalde secundaire database, in kilobytes (KB)/seconde.redo_rate wordt berekend door het totale aantal logboekbytes opnieuw te delen sinds het opstarten van de database-engine met de tijdsduur waarop de hero actief werd uitgevoerd, in plaats van door de verstreken tijd. Omdat opnieuw uitvoeren mogelijk niet continu wordt uitgevoerd, kan de resulterende waarde afwijken (hoger) dan de waarde van Database Replica:Redone Bytes/sec prestatiemeteritem. |
filestream_send_rate | grote | De snelheid waarmee de FILESTREAM-bestanden naar de secundaire replica worden verzonden, in kilobytes (KB)/seconde. |
end_of_log_lsn | numeriek(25,0) | Lokaal einde van logboek LSN. Werkelijke LSN die overeenkomt met de laatste logboekrecord in de logboekcache op de primaire en secundaire databases. Op de primaire replica geven de secundaire rijen het einde van de logboek-LSN weer van de meest recente voortgangsberichten die de secundaire replica's naar de primaire replica hebben verzonden.end_of_log_lsn weerspiegelt een logboekblok-id die is opgevuld met nullen. Het is geen werkelijk volgnummer voor logboeken. |
last_commit_lsn | numeriek(25,0) | Het werkelijke volgnummer van het logboek dat overeenkomt met de laatste doorvoerrecord in het transactielogboek. In de primaire database komt dit overeen met de laatste doorvoeringsrecord die is verwerkt. Rijen voor secundaire databases geven het logboekvolgordenummer weer dat de secundaire replica naar de primaire replica heeft verzonden. Op de secundaire replica is dit de laatste doorvoerrecord die opnieuw is uitgevoerd. |
last_commit_time | datum/tijd- | Tijd die overeenkomt met de laatste doorvoerrecord. In de secundaire database is dit keer hetzelfde als in de primaire database. Op de primaire replica geeft elke secundaire databaserij de tijd weer waarop de secundaire replica die als host fungeert voor de secundaire database, terug heeft gerapporteerd aan de primaire replica. Het verschil in tijd tussen de rij van de primaire database en een bepaalde secundaire databaserij vertegenwoordigt ongeveer het beoogde herstelpunt (RPO), ervan uitgaande dat het hero-proces wordt opgevangen en dat de voortgang door de secundaire replica is gerapporteerd aan de primaire replica. |
low_water_mark_for_ghosts | grote | Een monotonisch toenemend aantal voor de database dat aangeeft dat een laag watermarkering wordt gebruikt door ghost en permanente versieopslag opschonen op de primaire database. Als een schrijfworkload wordt uitgevoerd op de primaire, maar dit aantal na verloop van tijd niet toeneemt, betekent dit dat ghost- en permanente versieopslagopruiming mogelijk worden opgeslagen. Als u wilt bepalen welke spookrijen en welke rijversies moeten worden opgeschoond, gebruikt de primaire replica de minimumwaarde van deze kolom voor deze database voor alle replica's (inclusief de primaire replica). |
secondary_lag_seconds | grote | Het aantal seconden dat de secundaire replica zich achter de primaire replica bevindt tijdens de synchronisatie. van toepassing op: SQL Server 2016 (13.x) en latere versies. |
quorum_commit_lsn | numeriek(25,0) | Alleen ter informatie geïdentificeerd. Niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd. |
quorum_commit_time | datum/tijd- | Alleen ter informatie geïdentificeerd. Niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd. |
Machtigingen
Vereist de machtiging VIEW DATABASE STATE voor de database.