Vues de gestion dynamique et affichages catalogue système (groupes de disponibilité Always On)
S'applique à : SQL Server
Cette rubrique présente quelques-unes des requêtes courantes sur les DMV (vues de gestion dynamique) Always On que vous pouvez utiliser pour monitorer les groupes de disponibilité et résoudre les problèmes liés à ceux-ci.
Conseil
Dans le tableau de bord Always On, vous pouvez facilement configurer l’interface graphique utilisateur de manière à afficher la plupart de ces DMV pour les réplicas et bases de données de disponibilité en cliquant sur le bouton droit sur l’en-tête du tableau respectif et en sélectionnant la DMV à afficher ou à masquer.
Pour plus d’informations sur les DMV de groupe de disponibilité, consultez Vues et fonctions de gestion dynamiques de groupes de disponibilité Always On (Transact-SQL). Pour plus d’informations sur les vues de catalogue des groupes de disponibilité, consultez Vues de catalogue des groupes de disponibilité Always On (Transact-SQL).
Vérifier la configuration du nœud de cluster WSFC
La requête T-SQL (Transact-SQL) suivante récupère l’état de tous les nœuds du cluster WSFC (clustering de basculement Windows Server) actif.
use master
go
select * from sys.dm_hadr_cluster_members
go
Ce jeu de résultats fournit l’état de chaque nœud membre du cluster WSFC actif. Si le quorum est défini comme Nœud et partage de fichiers majoritaires, même le partage de fichiers est signalé. Vous pouvez voir l’état de chaque nœud, notamment le poids du vote de chaque nœud (valeur number_of_quorum_votes).
Explorer le réseau en cluster
La requête suivante récupère la configuration réseau du cluster WSFC actif.
select * from sys.dm_hadr_cluster_networks
Le jeu de résultats contient une ligne pour chaque carte réseau du cluster WSFC. Par exemple, dans un cluster à deux nœuds contenant deux cartes réseau par nœud, cette requête retourne quatre lignes.
Explorer les groupes de disponibilité
La requête suivante récupère des informations sur un groupe de disponibilité.
select primary_replica, primary_recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_group_states
go
select * from sys.availability_groups
go
select * from sys.availability_groups_cluster
go
Les DMV sys.dm_hadr_availability_group_states (Transact-SQL), sys.availability_groups (Transact-SQL) et sys.availability_groups_cluster retournent des informations sur les groupes de disponibilité dans le cluster WSFC actif. En fait, sys.availability_groups (Transact-SQL) et sys.availability_groups_cluster semblent retourner des informations identiques.
Toutefois, sys.availability_groups_cluster fournit les métadonnées de groupe de disponibilité stockées dans le cluster WSFC, tandis que sys.availability_groups (Transact-SQL) fournit les métadonnées de groupe de disponibilité mises en cache dans l’espace de processus SQL Server. Par ailleurs, ces deux DMV fournissent des informations de configuration alors que sys.dm_hadr_availability_group_states (Transact-SQL) fournit les états d’intégrité actuels des groupes de disponibilité.
Important
Cette nomenclature est transmise avec les DMV qui documentent les réplicas et bases de données de disponibilité.
Explorer les réplicas de disponibilité
La requête suivante récupère des informations sur les réplicas de disponibilité définis dans vos groupes de disponibilité.
select replica_id, role_desc, connected_state_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states
go
select replica_server_name, replica_id, availability_mode_desc, endpoint_url from sys.availability_replicas
go
select replica_server_name, join_state_desc from sys.dm_hadr_availability_replica_cluster_states
go
Comme pour les groupes de disponibilité, les informations sur les réplicas de disponibilité sont présentées dans trois DMV. sys.dm_hadr_availability_replica_states fournit des informations d’état sur les réplicas de disponibilité (mises en cache localement dans SQL Server), et sys.dm_hadr_availability_replica_cluster_states fournit des informations d’état sur les réplicas de disponibilité (à partir du cluster WSFC). Enfin, sys.availability_replicas fournit des données de configuration sur les réplicas de disponibilité (données mises en cache localement dans SQL Server).
Explorer l’intégrité du réplica de disponibilité
La requête suivante récupère les informations d’intégrité actuelles sur les réplicas de disponibilité.
select replica_id, role_desc, recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states
go
Comparez les résultats de la requête sur les réplicas principal et secondaire. Sur le réplica secondaire, notez que les informations d’intégrité signalées ne s’appliquent qu’à ce réplica (et non à d’autres réplicas du groupe de disponibilité).
Explorer les bases de données de disponibilité
La requête suivante récupère des informations sur les réplicas de disponibilité définis dans vos groupes de disponibilité. Vous pouvez observer le changement dans les résultats de la requête avant et après la suspension du déplacement de données sur une base de données de disponibilité.
select * from sys.availability_databases_cluster
go
select group_database_id, database_name, is_failover_ready from sys.dm_hadr_database_replica_cluster_states
go
select database_id, synchronization_state_desc, synchronization_health_desc, last_hardened_lsn, redo_queue_size, log_send_queue_size from sys.dm_hadr_database_replica_states
go
Ici encore, trois DMV Always On fournissent des informations sur les bases de données de disponibilité. sys.availability_databases_cluster fournit des informations de configuration sur les bases de données de disponibilité du cluster WSFC. sys.dm_hadr_database_replica_cluster_states fournit des informations d’état sur les réplicas de base de données (mises en cache localement dans SQL Server). Elle contient des informations d’état importantes, comme la disponibilité de basculement du réplica de disponibilité. Enfin, sys.dm_hadr_database_replica_states est un jeu de résultats très détaillé qui fournit des informations d’identité et d’état sur chaque base de données de disponibilité, notamment les informations de progression LSN pour les journaux des réplicas de base de données primaire et secondaire.
Explorer l’intégrité des bases de données de disponibilité
La requête suivante récupère des informations sur l’intégrité de chaque base de données de disponibilité sur les réplicas. Vous pouvez observer le changement dans les résultats de la requête avant et après la suspension du déplacement de données sur une base de données de disponibilité.
select dc.database_name, dr.database_id, dr.synchronization_state_desc,
dr.suspend_reason_desc, dr.synchronization_health_desc
from sys.dm_hadr_database_replica_states dr join sys.availability_databases_cluster dc
on dr.group_database_id=dc.group_database_id
where is_local=1
go