Fanr

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

DMV和系统目录视图

这里主要介绍AlwaysON的动态管理视图,可以用来监控和排查你的AG

AlwaysOn Dashboard,你可以简单的配置的GUI显示很多可用副本的DMV和可用数据库通过右击各自的表头并且选择你要加入和隐藏的DMV

更多关于DMV信息查看: AlwaysOn Availability Groups Dynamic Management Views and Functions (Transact-SQL).查看更多AG目录视图查看:AlwaysOn Availability Groups Catalog Views (Transact-SQL).

1.检查WSFC集群节点配置

use master

go

select * from sys.dm_hadr_cluster_members

go

结果集报告了每个成员节点的状态。quorum定义为节点和文件共享大多数。你可以看到每个节点的状态,包括每个节点投票的权重( number_of_quorum_votes)

2.集群网络

以下查询获取WSFC集群的网络配置:

select * from sys.dm_hadr_cluster_networks

这个结果,WSFC集群中的每个网络配置返回一样。比如双节点集群每个节点包含2个网络适配器,那么就返回4行。

3.可用组

以下语句获取AG信息。

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

DMV sys.dm_hadr_availability_group_states (Transact-SQL), sys.availability_groups (Transact-SQL), sys.availability_groups_cluster 返回WSFC集群中关于AG的所有信息。实际上sys.availability_groups (Transact-SQL), sys.availability_groups_cluster会返回相同的信息。

实际上, sys.availability_groups_cluster 返回保存在WSFC集群中AG的元数据。而sys.availability_groups (Transact-SQL) 返回SQL Server过程空间缓存的AG元数据信息。sys.dm_hadr_availability_group_states (Transact-SQL) 返回了当前AG的健康状态。

4.可用副本

以下查询返回Ag中的可用副本:
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

类似于AGDMV,有3个关于可用副本的DMVsys.dm_hadr_availability_replica_states返回可用副本的当前状态, sys.dm_hadr_availability_replica_cluster_states WFSC中返回可用副本的状态。 sys.availability_replicas返回可用副本的配置信息。

5.可用副本健康

通过以下查询获取当前可用副本健康信息

select replica_id, role_desc, recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states

go

比较primary副本和secondary副本,注意secondary副本,健康信息只报告AG内的可用副本。

6.可用数据库

以下信息获取可用副本内的数据库信息。你可以观察中断数据移动前后的可用数据库变化:
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

3个关于可用数据库的DMVsys.availability_databases_cluster返回在WSFC中的可用数据库的信息。sys.dm_hadr_database_replica_cluster_states返回数据库中数据库副本的状态信息。包含了一些重要的信息,比如是否准备好副本转移。 sys.dm_hadr_database_replica_states是最详细,返回了关于每个可用数据库的状态信息,比如LSN处理进程。

7.可用数据库健康

一下信息获取每个可用数据库的健康信息。

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

 

 

 

posted on 2015-11-21 21:12  Fanr_Zh  阅读(913)  评论(0编辑  收藏  举报