這裡主要介紹AlwaysON的動态管理視圖,可以用來監控和排查你的AG。
在AlwaysOn Dashboard,你可以簡單的配置的GUI顯示很多可用副本的DMV和可用資料庫通過右擊各自的表頭并且選擇你要加入和隐藏的DMV。
use master
go
select * from sys.dm_hadr_cluster_members
以下查詢擷取WSFC叢集的網絡配置:
select * from sys.dm_hadr_cluster_networks
這個結果,WSFC叢集中的每個網絡配置傳回一樣。比如雙節點叢集每個節點包含2個網絡擴充卡,那麼就傳回4行。
以下語句擷取AG資訊。
select primary_replica, primary_recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_group_states
select * from sys.availability_groups
select * from sys.availability_groups_cluster
以下查詢傳回Ag中的可用副本:
select replica_id, role_desc,
connected_state_desc,
synchronization_health_desc from sys.dm_hadr_availability_replica_states
select replica_server_name, replica_id,
availability_mode_desc, endpoint_url from sys.availability_replicas
select replica_server_name, join_state_desc from
sys.dm_hadr_availability_replica_cluster_states
通過以下查詢擷取目前可用副本健康資訊
select replica_id, role_desc, recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states
比較primary副本和secondary副本,注意secondary副本,健康資訊隻報告AG内的可用副本。
以下資訊擷取可用副本内的資料庫資訊。你可以觀察中斷資料移動前後的可用資料庫變化:
select * from sys.availability_databases_cluster
select group_database_id, database_name,
is_failover_ready from sys.dm_hadr_database_replica_cluster_states
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
一下資訊擷取每個可用資料庫的健康資訊。
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