Teilen über


sys.availability_replicas (Transact-SQL)

Gilt für:SQL Server

Gibt eine Zeile für jedes Verfügbarkeitsreplikat zurück, das zu allen AlwaysOn-Verfügbarkeitsgruppen im Windows Server-Failovercluster (WSFC) gehört.

Wenn die lokale Serverinstanz keine Verbindung mit dem WSFC-Failovercluster herstellen kann, z. B. weil der Cluster ausgefallen ist oder quorum verloren geht, sys.availability_replicas werden nur Zeilen für lokale Verfügbarkeitsreplikate zurückgegeben. Diese Zeilen enthalten nur die Spalten von Daten, die lokal in Metadaten zwischengespeichert werden.

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) Servername der Instanz von SQL Server, die dieses Replikat hosten, und für eine nicht standardmäßige Instanz den Namen der Instanz.
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(256) 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 – Hinzufügen oder Ändern des Verfügbarkeitsreplikats.

NULL = Mit dem WSFC-Failovercluster kann nicht gesprochen werden.

Verwenden Sie zum Ändern dieses Endpunkts die ENDPOINT_URL Option ALTER AVAILABILITY GROUP Transact-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.

Weitere Informationen finden Sie unter Unterschiede zwischen Verfügbarkeitsmodi für eine Always On-Verfügbarkeitsgruppe.

Gilt für SQL Server 2017 (14.x) CU 1 und höhere Versionen.
availability_mode_desc nvarchar(60) Beschreibung von availability_mode, eine von:

ASYNCHRONOUS_COMMIT
SYNCHRONOUS_COMMIT
CONFIGURATION_ONLY

Verwenden Sie die AVAILABILITY_MODE Option der ALTER AVAILABILITY GROUP Transact-SQL-Anweisung, um den Verfügbarkeitsmodus eines Verfügbarkeitsreplikats zu ändern.

Sie können den Verfügbarkeitsmodus eines Replikats nicht ändern in CONFIGURATION_ONLY. 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 Commitavailability_mode (is) festgelegt ist 1und das Verfügbarkeitsreplikat derzeit synchronisiert wird.

1 = Manuelles Failover. Wenn ein sekundäres Replikat für manuelles Failover konfiguriert ist, muss der Datenbankadministrator das Failover manuell initiieren. Der Typ des ausgeführten Failovers hängt davon ab, ob das sekundäre Replikat wie folgt synchronisiert wird:

Wenn das Verfügbarkeitsreplikat nicht synchronisiert oder noch synchronisiert wird, kann nur ein erzwungenes Failover (mit möglichen Datenverlusten) auftreten.

Wenn der Verfügbarkeitsmodus auf synchronen Commitavailability_mode (is 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 und synchronization_health_desc die synchronization_health Spalten der sys.dm_hadr_availability_replica_states dynamische Verwaltungsansicht. 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 und synchronization_health Die synchronization_state Spalten der sys.dm_hadr_database_replica_states dynamischen Verwaltungsansicht ab.
failover_mode_desc nvarchar(60) Beschreibung von failover_mode, eine von:

MANUAL
AUTOMATIC

Verwenden Sie die FAILOVER_MODE Option ALTER AVAILABILITY GROUP Transact-SQL Anweisung, um den Failovermodus zu ändern.
session_timeout int Der Timeoutzeitraum in Sekunden. Der Timeoutzeitraum ist die maximale Zeit, zu der das Replikat wartet, um eine Nachricht von einem anderen Replikat zu empfangen, bevor berücksichtigt wird, dass die Verbindung zwischen dem primären und dem sekundären Replikat fehlgeschlagen ist. Das Sitzungstimeout erkennt, ob Secondärdateien mit dem primären Replikat verbunden sind.

Beim Erkennen einer fehlgeschlagenen Verbindung mit einem sekundären Replikat betrachtet das primäre Replikat das sekundäre Replikat als .NOT_SYNCHRONIZED 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 SESSION_TIMEOUT Option ALTER AVAILABILITY GROUP Transact-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 = Lese-/Schreibzugriff
primary_role_allow_connections_desc nvarchar(60) Beschreibung von primary_role_allow_connections, eine von:

ALL
READ_WRITE
secondary_role_allow_connections tinyint Gibt an, ob ein Verfügbarkeitsreplikat, das die sekundäre Rolle ausführt (d. a. ein sekundäres Replikat), Verbindungen von Clients akzeptieren kann, eine von:

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

1 = Schreibgeschützt. 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 Auslagern von schreibgeschützten Workloads auf ein sekundäres Replikat einer Always On-Verfügbarkeitsgruppe.
secondary_role_allow_connections_desc nvarchar(60) Beschreibung von secondary_role_allow_connections, eine von:

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

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

NULL = Replikat 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 Auslagern von unterstützten Sicherungen auf sekundäre Replikate einer Verfügbarkeitsgruppe.
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 Always On-Verfügbarkeitsgruppe.
seeding_mode tinyint Eine der folgenden Optionen:

0 = Automatisch
1 = Manuell
seeding_mode_desc nvarchar(60) Beschreibt den Seedingmodus.

AUTOMATIC
MANUAL
read_write_routing_url nvarchar(256) 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).

Gilt für: SQL Server 2019 (15.x) und höhere Versionen.

Berechtigungen

Erfordert VIEW ANY DEFINITION berechtigungen für die Serverinstanz.