Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Questo argomento descrive alcune delle query più comuni sulle viste a gestione dinamica (DMV) Always On che è possibile utilizzare per monitorare e individuare e risolvere i problemi dei gruppi di disponibilità.
Suggerimento
Nel dashboard Always On è possibile configurare facilmente l'interfaccia utente grafica (GUI) per visualizzare molte delle DMV disponibili per le repliche di disponibilità e i database di disponibilità. Fare clic con il pulsante destro del mouse sull'intestazione di tabella corrispondente e selezionare la DMV che si vuole visualizzare o nascondere.
Per altre informazioni sulle DMV del gruppo di disponibilità, vedere Viste a gestione dinamica e funzioni di Gruppi di disponibilità Always On (Transact-SQL). Per altre informazioni sulle viste del catalogo dei gruppi di disponibilità, vedere Viste del catalogo di Gruppi di disponibilità Always On (Transact-SQL).
Controllare la configurazione del nodo del cluster WSFC
La query Transact-SQL (T-SQL) seguente recupera lo stato di tutti i nodi nel cluster WSFC (Windows Server Failover Clustering ) corrente.
use master
go
select * from sys.dm_hadr_cluster_members
go
Questo set di risultati segnala lo stato di ogni nodo membro del cluster WSFC corrente. Se il quorum è definito come Maggioranza nodi e condivisione file, viene riportata anche la condivisione file. È possibile visualizzare lo stato di ogni nodo, incluso il peso di votazione di ogni nodo (valore number_of_quorum_votes).
Esplorare la rete del cluster
La query seguente recupera la configurazione di rete del cluster WSFC corrente.
select * from sys.dm_hadr_cluster_networks
Il set di risultati contiene una riga per ogni scheda di rete nel cluster WSFC. Ad esempio, in un cluster a due nodi con due schede di rete su ciascun nodo, questa query restituisce quattro righe.
Esplorare i gruppi di disponibilità
La query seguente recupera informazioni su un gruppo di 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
Tutte le DMV sys.dm_hadr_availability_group_states (Transact-SQL), sys.availability_groups (Transact-SQL), e sys.availability_groups_cluster restituiscono informazioni sui gruppi di disponibilità del cluster WSFC corrente. In realtà sembra che availability_groups (Transact-SQL) e sys.availability_groups_cluster restituiscano informazioni identiche.
La DMV sys.availability_groups_cluster segnala invece i metadati del gruppo di disponibilità archiviati nel cluster WSFC, mentre la DMV sys.availability_groups (Transact-SQL) specifica i metadati del gruppo di disponibilità memorizzati nella cache dello spazio del processo di SQL Server. Queste due DMV segnalano anche informazioni sulla configurazione, mentre sys.dm_hadr_availability_group_states (Transact-SQL) indica gli stati di integrità correnti dei gruppi di disponibilità.
Importante
Questa nomenclatura viene mantenuta nelle DMV che documentano le repliche di disponibilità e i database di disponibilità.
Esplora le repliche della disponibilità
La query seguente recupera informazioni sulle repliche di disponibilità definite nei gruppi di 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
Analogamente alle DMV del gruppo di disponibilità, si trovano tre DMV che forniscono informazioni sulle repliche di disponibilità. La DMV sys.dm_hadr_availability_replica_states segnala informazioni sulle repliche di disponibilità memorizzate in locale nella cache di SQL Server, mentre la DMV sys.dm_hadr_availability_replica_cluster_states segnala informazioni di stato relative alle repliche di disponibilità del cluster WSFC. Infine, sys.availability_replicas riporta i dati di configurazione relativi alle repliche di disponibilità, che sono memorizzati nella cache locale di SQL Server.
Esplora lo stato della replica di disponibilità
La query seguente restituisce le informazioni correnti sullo stato di integrità delle repliche di disponibilità.
select replica_id, role_desc, recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states
go
Confrontare i risultati della query nella replica primaria e nella replica secondaria e notare che nella replica secondaria le informazioni di stato vengono segnalate solo per la replica specifica e non per qualsiasi altra replica nel gruppo di disponibilità.
Esplorare i database di disponibilità
La query seguente recupera le informazioni sulle repliche di disponibilità definite nel gruppo di disponibilità. È possibile osservare la variazione nei risultati della query prima e dopo aver sospeso lo spostamento dei dati in un database di 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
Anche in questo caso, tre DMV Always On forniscono informazioni sui database di disponibilità. La DMV sys.availability_databases_cluster riporta informazioni di configurazione relative ai database di disponibilità del cluster WSFC. La DMV sys.dm_hadr_database_replica_cluster_states restituisce informazioni sullo stato delle repliche del database, memorizzate nella cache locale di SQL Server. Contiene alcune importanti informazioni sullo stato, ad esempio la prontezza al failover della replica di disponibilità. Infine, sys.dm_hadr_database_replica_states restituisce un set di risultati molto dettagliato che riporta informazioni sull'identità e sullo stato di ogni database incluso nel gruppo di disponibilità, ad esempio informazioni sull'avanzamento dell'LSN per i log delle repliche di database primarie e secondarie.
Esplora lo stato del database di disponibilità
La query seguente restituisce informazioni sullo stato di integrità di ciascun database di disponibilità sulle repliche. È possibile osservare la variazione nei risultati della query prima e dopo aver sospeso lo spostamento dei dati in un database di 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