Überwachen von Verfügbarkeitsgruppen (Transact-SQL)
Zum Überwachen von Verfügbarkeitsgruppen und -replikaten und den zugeordneten Datenbanken mit Transact-SQL stellt AlwaysOn-Verfügbarkeitsgruppen einen Satz von Katalogsichten und dynamischen Verwaltungssichten sowie Servereigenschaften bereit. Mit Transact-SQL SELECT-Anweisungen können Sie mithilfe der Sichten Verfügbarkeitsgruppen und ihre Replikate und Datenbanken überwachen. Die für eine bestimmte Verfügbarkeitsgruppe zurückgegebenen Informationen hängen davon ab, ob Sie mit der Instanz von SQL Server verbunden sind, die das primäre Replikat oder ein sekundäres Replikat hostet.
Tipp |
---|
Viele dieser Sichten können mithilfe ihre ID-Spalten verknüpft werden, um Informationen aus mehreren Sichten in einer einzelnen Abfrage zurückzugeben. |
In diesem Thema:
Berechtigungen
Verwenden von Transact-SQL zum Überwachen folgender Elemente:
Funktion AlwaysOn-Verfügbarkeitsgruppen auf einer Serverinstanz
Verfügbarkeitsgruppen auf dem WSFC-Cluster
Verfügbarkeitsgruppen
Verfügbarkeitsreplikate
Verfügbarkeitsdatenbanken
Verfügbarkeitsgruppenlistener
Verwandte Aufgaben
Berechtigungen
AlwaysOn-Verfügbarkeitsgruppen-Katalogsichten erfordern die VIEW ANY DEFINITION-Berechtigung für die Serverinstanz. Dynamische AlwaysOn-Verfügbarkeitsgruppen-Verwaltungssichten erfordern die VIEW SERVER STATE-Berechtigung für den Server.
Überwachen der Funktion AlwaysOn-Verfügbarkeitsgruppen auf einer Serverinstanz
Verwenden Sie zum Überwachen der AlwaysOn-Verfügbarkeitsgruppen-Funktion auf einer Serverinstanz folgende integrierte Funktion:
SERVERPROPERTY-Funktion
Gibt Server-Eigenschaftsinformationen dazu zurück, ob AlwaysOn-Verfügbarkeitsgruppen aktiviert ist, und falls ja, ob es auf der Serverinstanz gestartet wurde.Spaltennamen: IsHadrEnabled, HadrManagerStatus
Überwachen von Verfügbarkeitsgruppen auf dem WSFC-Cluster
Verwenden Sie zum Überwachen des WSFC-Clusters (Windows Server-Failoverclustering), der eine für AlwaysOn-Verfügbarkeitsgruppen aktivierte lokale Serverinstanz hostet, die folgenden Sichten:
sys.dm_hadr_cluster
Wenn der WSFC-Knoten (Windows Server-Failoverclustering), der eine Instanz von SQL Server hostet, für die AlwaysOn-Verfügbarkeitsgruppen aktiviert ist und über ein WSFC-Quorum verfügt, gibt sys.dm_hadr_cluster eine Zeile zurück, die den Clusternamen und Informationen zum Quorum verfügbar macht. Wenn der WSFC-Knoten nicht über ein Quorum verfügt, werden keine Zeilen zurückgegeben.Spaltennamen: cluster_name, quorum_type, quorum_type_desc, quorum_state, quorum_state_desc
sys.dm_hadr_cluster_members
Wenn der WSFC-Knoten, der die lokale AlwaysOn-fähige Instanz von SQL Server hostet, über ein WSFC-Quorum verfügt, wird eine Zeile für jedes Element, aus denen das Quorum besteht, einschließlich Elementstatus, zurückgegeben.Spaltennamen: member_name, member_type, member_type_desc, member_state, member_state_desc, number_of_quorum_votes
sys.dm_hadr_cluster_networks
Gibt eine Zeile für jedes Element zurück, das an der Subnetzkonfiguration einer Verfügbarkeitsgruppe beteiligt ist. Sie können diese dynamische Verwaltungssicht verwenden, um die virtuelle IP-Adresse des Netzwerks zu überprüfen, die für jedes Verfügbarkeitsreplikat konfiguriert ist.Spaltennamen: member_name, network_subnet_ip, network_subnet_ipv4_mask, network_subnet_prefix_length, is_public, is_ipv4
Primärschlüssel: member_name + network_subnet_IP + network_subnet_prefix_length
sys.dm_hadr_instance_node_map
Jede Instanz von SQL Server, auf der ein Verfügbarkeitsreplikat gehostet wird, das mit seiner AlwaysOn-Verfügbarkeitsgruppe verknüpft ist, gibt den Namen des WSFC-Knotens (Windows Server Failover Clustering) zurück, auf dem die Serverinstanz gehostet wird. Die dynamische Verwaltungssicht dient für Folgendes:Diese dynamische Verwaltungssicht ist nützlich für das Erkennen einer Verfügbarkeitsgruppe mit mehreren Verfügbarkeitsreplikaten, die im gleichen WSFC-Knoten gehostet werden, der eine nicht unterstützte Konfiguration ist. Letztere könnte nach einem FCI-Failover auftreten, wenn die Verfügbarkeitsgruppe falsch konfiguriert wird.
Wenn mehrere SQL Server-Instanzen auf dem gleichen WSFC-Knoten gehostet werden, verwendet die Ressourcen-DLL diese dynamische Verwaltungssicht, um die Instanz von SQL Server zu bestimmen, um damit eine Verbindung herzustellen.
Spaltennamen: ag_resource_id, instance_name, node_name
sys.dm_hadr_name_id_map
Zeigt die Zuordnung von AlwaysOn-Verfügbarkeitsgruppen an, die die aktuelle Instanz von SQL Server mit drei eindeutigen IDs verknüpft hat: eine Verfügbarkeitsgruppen-ID, eine WSFC-Ressourcen-ID und eine WSFC-Gruppen-ID. Der Zweck dieser Zuordnung ist, das Szenario zu behandeln, in dem die WSFC-Ressource/Gruppe umbenannt wird.Spaltennamen: ag_name, ag_id, ag_resource_id, ag_group_id
Hinweis |
---|
Siehe auch weiter unten in diesem Thema sys.dm_hadr_availability_replica_cluster_nodes und sys.dm_hadr_availability_replica_cluster_states im Abschnitt Überwachen von Verfügbarkeitsreplikaten sowie sys.availability_databases_cluster und sys.dm_hadr_database_replica_cluster_states im Abschnitt Überwachen von Verfügbarkeitsdatenbanken. |
Weitere Informationen zu WSFC-Clustern und AlwaysOn-Verfügbarkeitsgruppen finden Sie unter Windows Server-Failoverclustering (WSFC) mit SQL Server und Failoverclustering und AlwaysOn-Verfügbarkeitsgruppen (SQL Server).
[Nach oben]
Überwachen von Verfügbarkeitsgruppen
Verwenden Sie zum Überwachen der Verfügbarkeitsgruppen, für die die Serverinstanz ein Verfügbarkeitsreplikat hostet, die folgenden Sichten:
sys.availability_groups
Gibt eine Zeile für jede Verfügbarkeitsgruppe zurück, für die die lokale Instanz von SQL Server ein Verfügbarkeitsreplikat hostet. Jede Zeile enthält eine zwischengespeicherte Kopie der Metadaten der Verfügbarkeitsgruppe.Spaltennamen: group_id, name, resource_id, resource_group_id, failure_condition_level, health_check_timeout, automated_backup_preference, automated_backup_preference_desc
sys.availability_groups_cluster
Gibt eine Zeile für jede Verfügbarkeitsgruppe im WSFC-Cluster zurück. Jede Zeile enthält die Verfügbarkeitsgruppenmetadaten vom WSFC-Cluster (Windows Server-Failoverclustering).Spaltennamen: group_id, name, resource_id, resource_group_id, failure_condition_level, health_check_timeout, automated_backup_preference, automated_backup_preference_desc
sys.dm_hadr_availability_group_states
Gibt eine Zeile für jede Verfügbarkeitsgruppe zurück, die ein Verfügbarkeitsreplikat in der lokalen Instanz von SQL Server besitzt. In jede Zeile werden die Statuswerte angezeigt, die den Zustand einer angegebenen Verfügbarkeitsgruppe definieren.Spaltennamen: group_id, primary_replica, primary_recovery_health, primary_recovery_health_desc, secondary_recovery_health, secondary_recovery_health_desc, synchronization_health, synchronization_health_desc
[Nach oben]
Überwachen von Verfügbarkeitsreplikaten
Verwenden Sie zum Überwachen von Verfügbarkeitsreplikaten die folgenden Sichten und Systemfunktion:
sys.availability_replicas
Gibt eine Zeile für jedes Verfügbarkeitsreplikat in jeder Verfügbarkeitsgruppe zurück, für die die lokale Instanz von SQL Server ein Verfügbarkeitsreplikat hostet.Spaltennamen: replica_id, group_id, replica_metadata_id, replica_server_name, owner_sid, endpoint_url, availability_mode, availability_mode_desc, failover_mode, failover_mode_desc, session_timeout, primary_role_allow_connections, primary_role_allow_connections_desc, secondary_role_allow_connections, secondary_role_allow_connections_desc, create_date, modify_date, backup_priority, read_only_routing_url
sys.availability_read_only_routing_lists
Gibt eine Zeile für die schreibgeschützte Routingliste aller Verfügbarkeitsreplikate zurück, die zu einer AlwaysOn-Verfügbarkeitsgruppe im WSFC-Failovercluster gehören.Spaltennamen: replica_id, routing_priority, read_only_replica_id
sys.dm_hadr_availability_replica_cluster_nodes
Gibt eine Zeile für jedes Verfügbarkeitsreplikat (unabhängig vom Joinzustand) der AlwaysOn-Verfügbarkeitsgruppen im WSFC-Cluster (Windows Server-Failoverclustering) zurück.Spaltennamen: group_name, replica_server_name, node_name
sys.dm_hadr_availability_replica_cluster_states
Gibt eine Zeile für jedes Replikat (unabhängig vom Joinzustand) aller AlwaysOn-Verfügbarkeitsgruppen (unabhängig von Replikatspeicherort) im WSFC-Cluster (Windows Server-Failoverclustering) zurück.Spaltennamen: replica_id, replica_server_name, group_id, join_state, join_state_desc
sys.dm_hadr_availability_replica_states
Gibt eine Zeile mit dem Status jedes lokalen Verfügbarkeitsreplikats und eine Zeile für jedes Remoteverfügbarkeitsreplikat in derselben Verfügbarkeitsgruppe zurück.Spaltennamen: replica_id, group_id, is_local, role, role_desc, operational_state, operational_state_desc, connected_state, connected_state_desc, recovery_health, recovery_health_desc, synchronization_health, synchronization_health_desc, last_connect_error_number, last_connect_error_description, and last_connect_error_timestamp
sys.fn_hadr_backup_is_preferred_replica
Bestimmt, ob das aktuelle Replikat das bevorzugte Sicherungsreplikat ist.
Hinweis |
---|
Weitere Informationen zu Leistungsindikatoren für Verfügbarkeitsreplikate (das SQLServer:Availability Replica -Leistungsobjekt) finden Sie unter SQL Server, Verfügbarkeitsreplikat. |
[Nach oben]
Überwachen von Verfügbarkeitsdatenbanken
Verwenden Sie zum Überwachen von Verfügbarkeitsdatenbanken die folgenden Sichten:
sys.availability_databases_cluster
Enthält eine Zeile für jede Datenbank in der Instanz von SQL Server, die Teil aller AlwaysOn-Verfügbarkeitsgruppen im Cluster ist, unabhängig davon, ob die lokale Kopie der Datenbank bereits mit der Verfügbarkeitsgruppe verknüpft wurde.Hinweis Wenn eine Datenbank einer Verfügbarkeitsgruppe hinzugefügt wird, wird die primäre Datenbank automatisch mit der Gruppe verknüpft. Sekundäre Datenbanken müssen auf jedem sekundären Replikat vorbereitet werden, bevor sie mit der Verfügbarkeitsgruppe verknüpft werden können.
Spaltennamen: group_id, group_database_id, database_name
sys.databases
Enthält eine Zeile für jede Datenbank in der SQL Server-Instanz. Wenn eine Datenbank zu einem Verfügbarkeitsreplikat gehört, zeigt die Zeile für diese Datenbank die GUID des Replikats und den eindeutigen Bezeichner der Datenbank innerhalb der Verfügbarkeitsgruppe an.AlwaysOn-Verfügbarkeitsgruppen-Spaltennamen: replica_id, group_database_id
sys.dm_hadr_auto_page_repair
Gibt eine Zeile für jede versuchte automatische Seitenreparatur in einer beliebigen Verfügbarkeitsdatenbank auf einem Verfügbarkeitsreplikat zurück, das von der Serverinstanz für eine beliebige Verfügbarkeitsgruppe gehostet wird. Diese Sicht enthält Zeilen für die letzte automatische Seitenreparatur einer bestimmten primären oder sekundären Datenbank. Pro Datenbank können maximal 100 Zeilen angezeigt werden. Sobald das Maximum in der Datenbank erreicht ist, ersetzt die Zeile bei der nächsten automatischen Seitenreparatur einen der bereits vorhandenen Einträge.Spaltennamen: database_id, file_id, page_id, error_type, page_status, modification_time
sys.dm_hadr_database_replica_states
Gibt eine Zeile für jede Datenbank zurück, die an einer Verfügbarkeitsgruppe teilnimmt, für die die lokale Instanz von SQL Server ein Verfügbarkeitsreplikat hostet.Spaltennamen: database_id, group_id, replica_id, group_database_id, is_local, synchronization_state, synchronization_state_desc, is_commit_participant, synchronization_health, synchronization_health_desc, database_state, database_state_desc, is_suspended, suspend_reason, suspend_reason_desc, recovery_lsn, truncation_lsn, last_sent_lsn, last_sent_time, last_received_lsn, last_received_time, last_hardened_lsn, last_hardened_time, last_redone_lsn, last_redone_time, log_send_queue_size, log_send_rate, redo_queue_size, redo_rate, filestream_send_rate, end_of_log_lsn, last_commit_lsn, last_commit_time, low_water_mark_for_ghosts
sys.dm_hadr_database_replica_cluster_states
Gibt eine Zeile mit Informationen zurück, die einen Einblick in den Zustand der Verfügbarkeitsdatenbanken aller Verfügbarkeitsgruppen auf dem WSFC-Cluster (Windows Server-Failoverclustering) geben. Diese dynamische Verwaltungssicht ist nützlich beim Planen oder Reagieren auf ein Failover oder zum Ermitteln des sekundären Replikats in einer Verfügbarkeitsgruppe, das die Protokollkürzung in einer bestimmten primären Datenbank aufhält.Spaltennamen: replica_id, group_database_id, database_name, is_failover_ready, is_pending_secondary_suspend, is_database_joined, recovery_lsn, truncation_lsn
Hinweis Der primäre Replikatspeicherort ist die autoritative Quelle für eine Verfügbarkeitsgruppe.
Hinweis |
---|
Informationen zu AlwaysOn-Verfügbarkeitsgruppen-Leistungsindikatoren für Verfügbarkeitsreplikat-Datenbanken (das SQLServer:Database Replica-Leistungsobjekt) finden Sie unter SQL Server, Datenbankreplikat. Verwenden Sie zum Überwachen der Transaktionsprotokollaktivität auf Verfügbarkeitsdatenbanken die folgenden Indikatoren des SQLServer:Databases-Leistungsobjekts: Wartezeit für Protokollleerung (ms), Protokollleerungen/Sekunde, Protokollpool-Cachefehlversuche/Sekunde, Protokollpool-Lesevorgänge auf dem Datenträger/Sekunde und Protokollpoolanforderungen/Sekunde. Weitere Informationen finden Sie unter SQL Server, Datenbanken-Objekt. |
[Nach oben]
Überwachen von Verfügbarkeitsgruppenlistenern
Zum Überwachen der Verfügbarkeitsgruppenlistener auf Subnetzen des WSFC-Clusters verwenden Sie die folgenden Sichten:
sys.availability_group_listener_ip_addresses
Gibt eine Zeile für jede konforme virtuelle IP-Adresse zurück, die derzeit für einen Verfügbarkeitsgruppenlistener online ist.Spaltennamen: listener_id, ip_address, ip_subnet_mask, is_dhcp, network_subnet_ip, network_subnet_prefix_length, network_subnet_ipv4_mask, state, state_desc
sys.availability_group_listeners
Gibt für eine angegebene Verfügbarkeitsgruppe entweder 0 Zeilen zurück, um anzugeben, dass der Verfügbarkeitsgruppe kein Netzwerkname zugeordnet ist, oder eine Zeile für jede Verfügbarkeitsgruppen-Listenerkonfiguration im WSFC-Cluster.Spaltennamen: group_id, listener_id, dns_name, port, is_conformant, ip_configuration_string_from_cluster
sys.dm_tcp_listener_states
Gibt eine Zeile zurück, die Informationen zum dynamischen Status für jeden TCP-Listener enthält.Spaltennamen: listener_id, ip_address, is_ipv4, port, type, type_desc, state, state_desc, start_time
Primärschlüssel: listener_id
Weitere Informationen über Verfügbarkeitsgruppenlistener finden Sie unter Verfügbarkeitsgruppenlistener, Clientkonnektivität und Anwendungsfailover (SQL Server).
[Nach oben]
Verwandte Aufgaben
Überwachungsaufgaben für AlwaysOn-Verfügbarkeitsgruppen:
Anzeigen von Verfügbarkeitsgruppeneigenschaften (SQL Server)
Anzeigen von Verfügbarkeitsreplikateigenschaften (SQL Server)
Anzeigen von Eigenschaften des Verfügbarkeitsgruppenlisteners (SQL Server)
Referenz zum Überwachen von AlwaysOn-Verfügbarkeitsgruppen (Transact-SQL):
sys.dm_hadr_availability_replica_cluster_nodes (Transact-SQL)
sys.dm_hadr_availability_replica_cluster_states (Transact-SQL)
sys.dm_hadr_availability_replica_cluster_states (Transact-SQL)
AlwaysOn-Leistungsindikatoren:
Richtlinienbasierte Verwaltung für AlwaysOn-Verfügbarkeitsgruppen
Verwenden von AlwaysOn-Richtlinien zum Anzeigen des Zustands einer Verfügbarkeitsgruppe (SQL Server)
Verwenden des AlwaysOn-Dashboards (SQL Server Management Studio)
[Nach oben]
Siehe auch
Konzepte
AlwaysOn-Verfügbarkeitsgruppen (SQL Server)