SQL Server 2012:SQL查询,用于获取高可用性配置中服务器为辅助服务器的数据库列表

时间:2013-08-19 05:26:36

标签: sql-server sql-server-2012

任何人都可以帮助我获取SQL查询以获取服务器所在的数据库列表 中学。 EX。在高可用性组中,SERVER S1主要用于可用性组AV1(DB1,DB2),辅助用于AV2(DB3,DB4)。 我想查询获取S1为次要的数据库列表。对于DB3和DB4。

请帮帮我。

2 个答案:

答案 0 :(得分:1)

以下查询将返回一个表,该表包含可用性组中的数据库名称,这些数据库是查询服务器上的辅助副本。

CREATE TABLE Languages (
    lang VARCHAR(222) NOT NULL,
    counter INT UNSIGNED NOT NULL.
    PRIMARY KEY(lang)
) ENGINE=InnoDB;

答案 1 :(得分:0)

所以,我没有给你一个确切的查询,但它不应该太难做,有2个DMV可供考虑:

sys.dm_hadr_availability_group_states - 这将告诉您有关可用性组以及哪些服务器是每个

的主要/辅助副本

sys.dm_hadr_database_replica_states - 这将告诉您每个可用性组中的数据库以及它们所处的状态

将这两个一起加入group_id列,您将能够看到哪些数据库位于哪个可用性组以及哪些服务器充当主要/辅助副本。

这里的文档链接:

AlwaysOn Availability Groups Dynamic Management Views and Functions