【发布时间】:2011-10-20 12:26:45
【问题描述】:
我正在寻找一种方法来以编程方式查询哪个 SQL 服务器用作主体 SQL 服务器,哪个是一对中的镜像。有谁知道这是否可以通过 PowerShell (SQLPS) 或 CMD (SQLCMD) 实现?如果是这样,我该如何查询这些信息?
提前致谢!
【问题讨论】:
标签: sql-server scripting powershell sqlcmd
我正在寻找一种方法来以编程方式查询哪个 SQL 服务器用作主体 SQL 服务器,哪个是一对中的镜像。有谁知道这是否可以通过 PowerShell (SQLPS) 或 CMD (SQLCMD) 实现?如果是这样,我该如何查询这些信息?
提前致谢!
【问题讨论】:
标签: sql-server scripting powershell sqlcmd
我没有方便测试的实例,但我认为您应该能够使用 SQLCMD 查询sys.database_mirroring_witnesses(SQL Server 2005 或更高版本)以获取您正在寻找的信息。
编辑
感谢@Remus 的精彩评论。合适的地方是sys.database_mirroring。
【讨论】:
sys.database_mirroring,它包含数据库状态/角色(msdn.microsoft.com/en-us/library/ms178655.aspx)。 sys.database_mirror_witnesses 包含有关镜像见证人的信息。