Freigeben über


sys.availability_replicas (Transact-SQL)

Gilt für: SQL Server

Gibt eine Zeile für jedes Verfügbarkeitsreplikat zurück, das zu einer Always On-Verfügbarkeitsgruppe im WSFC-Failovercluster gehört.

Wenn die lokale Serverinstanz nicht mit dem WSFC-Failovercluster kommunizieren kann, beispielsweise beim Ausfall des Clusters oder im Fall eines verlorenen Quorums, werden nur Zielen für lokale Verfügbarkeitsreplikate zurückgegeben. Diese Zeilen enthalten nur die Spalten der Daten, die in Metadaten lokal zwischengespeichert sind.

Spaltenname Datentyp Beschreibung
replica_id uniqueidentifier Eindeutige ID des Replikats.
group_id uniqueidentifier Eindeutige ID der Verfügbarkeitsgruppe, zu der das Replikat gehört.
replica_metadata_id int ID für das lokale Metadatenobjekt für Verfügbarkeitsreplikate in der Datenbank-Engine.
replica_server_name nvarchar(256) Entspricht dem Servernamen der SQL Server -Instanz, die dieses Replikat hostet, sowie bei einer nicht standardmäßigen Instanz dem Instanznamen.
owner_sid varbinary(85) Sicherheits-ID (SID), die bei dieser Serverinstanz für den externen Eigentümer dieses Verfügbarkeitsreplikats registriert ist.

NULL für nicht lokale Verfügbarkeitsreplikate.
endpoint_url nvarchar(128) Entspricht der Zeichenfolgendarstellung des vom Benutzer angegebenen Datenbankspiegelungs-Endpunkts, der von Verbindungen zwischen primären und sekundären Replikaten für die Datensynchronisierung verwendet wird. Informationen zur Syntax von Endpunkt-URLs finden Sie unter Angeben der Endpunkt-URL beim Hinzufügen oder Ändern eines Verfügbarkeitsreplikats (SQL Server).

NULL = Kommunikation mit dem WSFC-Failovercluster ist nicht möglich.

Verwenden Sie zum Ändern dieses Endpunkts die option ENDPOINT_URL alter AVAILABILITY GROUPTransact-SQL-Anweisung.
availability_mode tinyint Der Verfügbarkeitsmodus des Replikats. Folgende Werte sind möglich:

0 | Asynchroner Commit. Das primäre Replikat kann einen Commit für Transaktionen ausführen, ohne das Schreiben des Protokolls auf den Datenträger durch das sekundäre Replikat abzuwarten.

1 | Synchroner Commit. Das primäre Replikat wartet mit dem Ausführen des Commits für eine bestimmte Transaktion, bis das sekundäre Replikat die Transaktion auf den Datenträger geschrieben hat.

4 | Nur Konfiguration. Das primäre Replikat sendet Konfigurationsmetadaten der Verfügbarkeitsgruppe synchron an das Replikat. Benutzerdaten werden nicht an das Replikat übertragen. Verfügbar in SQL Server 2017 CU1 und höher.

Weitere Informationen finden Sie unter Verfügbarkeitsmodi (Always On-Verfügbarkeitsgruppen).
availability_mode_desc nvarchar(60) Beschreibung von availability_mode, einer von:

ASYNCHRONOUS_COMMIT

SYNCHRONOUS_COMMIT

CONFIGURATION_ONLY

Verwenden Sie zum Ändern des Verfügbarkeitsmodus eines Verfügbarkeitsreplikats die option AVAILABILITY_MODE der ALTER AVAILABILITY GROUPTransact-SQL-Anweisung.

Sie können den Verfügbarkeitsmodus eines Replikats nicht in CONFIGURATION_ONLY ändern. Sie können ein CONFIGURATION_ONLY Replikat nicht in ein sekundäres oder primäres Replikat ändern.
failover_mode tinyint Der Failovermodus des Verfügbarkeitsreplikats, einer von:

0 | Automatisches Failover. Das Replikat ist ein potenzielles Ziel für automatische Failovers. Automatisches Failover wird nur unterstützt, wenn der Verfügbarkeitsmodus auf synchronen Commit (availability_mode = 1) festgelegt ist und das Verfügbarkeitsreplikat derzeit synchronisiert wird.

1 | Manuelles Failover. Ein Failover zu einem sekundären Replikat, für das ein manuelles Failover festgelegt ist, muss vom Datenbankadministrator manuell initiiert werden. Der Failovertyp, der ausgeführt wird, hängt davon ab, ob das sekundäre Replikat wie folgt synchronisiert wird:

Wenn das Verfügbarkeitsreplikat nicht synchronisiert oder die Synchronisierung noch durchgeführt wird, kann nur ein erzwungenes Failover auftreten (mit möglichem Datenverlust).

Wenn der Verfügbarkeitsmodus auf synchronen Commit (availability_mode = 1) festgelegt ist und das Verfügbarkeitsreplikat derzeit synchronisiert wird, kann ein manuelles Failover ohne Datenverlust auftreten.

Zum Anzeigen eines Rollups der Datenbanksynchronisierungsintegrität jeder Verfügbarkeitsdatenbank in einem Verfügbarkeitsreplikat verwenden Sie die Spalten synchronization_health und synchronization_health_desc der dynamischen Verwaltungsansicht sys.dm_hadr_availability_replica_states. Der Rollup berücksichtigt den Synchronisierungsstatus jeder Verfügbarkeitsdatenbank und den Verfügbarkeitsmodus ihres Verfügbarkeitsreplikats.

Hinweis: Um den Synchronisierungsstatus einer bestimmten Verfügbarkeitsdatenbank anzuzeigen, fragen Sie die spalten synchronization_state und synchronization_health der dynamischen Verwaltungsansicht sys.dm_hadr_database_replica_states ab.
failover_mode_desc nvarchar(60) Beschreibung der failover_mode, einer von:

MANUAL

AUTOMATIC

Verwenden Sie zum Ändern des Failovermodus die option FAILOVER_MODE der ALTER AVAILABILITY GROUPTransact-SQL-Anweisung.
session_timeout int Der Timeoutzeitraum in Sekunden. Der Timeoutzeitraum ist die maximale Zeit, die das Replikat für den Empfang einer Meldung von einem anderen Replikat abwartet, bevor die Verbindung zwischen dem primären und sekundären Replikat als fehlerhaft betrachtet wird. Das Sitzungstimeout erkennt, ob sekundäre Replikate mit dem primären Replikat verbunden sind.

Bei der Erkennung einer fehlerhaften Verbindung mit einem sekundären Replikat betrachtet das primäre Replikat das sekundäre Replikat als nicht synchronisiert und weist diesem den Wert NOT_SYNCHRONIZED zu. Ein sekundäres Replikat versucht einfach, erneut eine Verbindung herzustellen, wenn eine fehlgeschlagene Verbindung mit dem primären Replikat erkannt wird.

Hinweis: Sitzungstimeouts verursachen keine automatischen Failovers.

Verwenden Sie zum Ändern dieses Werts die option SESSION_TIMEOUT alter AVAILABILITY GROUPTransact-SQL-Anweisung.
primary_role_allow_connections tinyint Gibt an, ob die Verfügbarkeit alle Verbindungen oder nur Verbindungen mit Lese-/Schreibzugriff zulässt. Folgende Werte sind möglich:

2 = Alle (Standard)

3 = Lesen/Schreiben
primary_role_allow_connections_desc nvarchar(60) Beschreibung von primary_role_allow_connections, einer von:

ALL

READ_WRITE
secondary_role_allow_connections tinyint Gibt an, ob ein Verfügbarkeitsreplikat, das die sekundäre Rolle ausführt (also einem sekundären Replikat entspricht), Verbindungen von Clients zulassen kann. Folgende Werte sind möglich:

0 = Nein. Für die Datenbanken im sekundären Replikat sind keine Verbindungen zugelassen, und die Datenbanken sind für den Lesezugriff nicht verfügbar. Dies ist die Standardeinstellung.

1 = Nur Lesezugriff. Nur Verbindungen mit Lesezugriff auf die Datenbanken im sekundären Replikat sind zugelassen. Alle Datenbanken im Replikat sind für den Lesezugriff verfügbar.

2 = Alle. Für alle Verbindungen mit den Datenbanken im sekundären Replikat ist der schreibgeschützte Zugriff zugelassen.

Weitere Informationen finden Sie unter Aktive sekundäre Replikate: Lesbare sekundäre Replikate (Always On-Verfügbarkeitsgruppen).
secondary_role_allow_connections_desc nvarchar(60) Beschreibung von secondary_role_allow_connections, einer von:

NEIN

READ_ONLY

ALL
create_date datetime Das Datum, an dem das Replikat erstellt wurde.

NULL = Replikat befindet sich nicht auf dieser Serverinstanz.
modify_date datetime Datum der letzten Änderung des Replikats.

NULL = Replikat befindet sich nicht auf dieser Serverinstanz.
backup_priority int Stellt die benutzerdefinierte Priorität für die Ausführung von Sicherungen auf diesem Replikat in Relation zu den anderen Replikaten in derselben Verfügbarkeitsgruppe dar. Der Wert liegt im Bereich von 0 bis 100 und ist eine ganze Zahl.

Weitere Informationen finden Sie unter Aktive sekundäre Replikate: Sicherung auf sekundären Replikaten (Always On-Verfügbarkeitsgruppen).
read_only_routing_url nvarchar(256) Konnektivitätsendpunkt (URL) der schreibgeschützten Verbindung für das Verfügbarkeitsreplikat. Weitere Informationen finden Sie unter Konfigurieren des schreibgeschützten Routings für eine Verfügbarkeitsgruppe (SQL Server).
read_write_routing_url nvarchar(256) SQL Server 2019 (15.x) und höher. Verbindungsendpunkt (URL) für den Zeitpunkt, an dem das Replikat die primäre ist. Weitere Informationen finden Sie unter Umleitung von Lese-/Schreibverbindungen vom sekundären zum primären Replikat (Always On-Verfügbarkeitsgruppen).
seeding_mode tinyint Eine der folgenden Optionen:

0: Automatisch

1: Manuell
seeding_mode_desc nvarchar(60) Beschreibt den Seedingmodus.

AUTOMATIC

MANUAL

Sicherheit

Berechtigungen

Erfordert die VIEW ANY DEFINITION-Berechtigung für die Serverinstanz.

Weitere Informationen