sys.dm_os_cluster_nodes (Transact-SQL)

适用于:SQL ServerAzure Synapse AnalyticsAnalytics Platform System (PDW)

为故障转移群集实例配置中的每个节点返回一行。 如果当前实例是故障转移群集实例,则返回已定义此故障转移群集实例 (以前为“虚拟服务器”) 的节点列表。 如果当前服务器实例不是故障转移群集实例,则返回空行集。

注意

若要从 Azure Synapse Analytics 或 Analytics Platform System (PDW) 调用此名称,请使用名称sys.dm_pdw_nodes_os_cluster_nodes。 Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。

列名称 数据类型 说明
NodeName sysname SQL Server故障转移群集实例中的节点名称 (虚拟服务器) 配置。
状态 int SQL Server故障转移群集实例中的节点状态:0、1、2、3、-1。 有关详细信息,请参阅 GetClusterNodeState 函数
status_description nvarchar (20) 描述SQL Server故障转移群集节点的状态。

0 = 正常运行

1 = 停止

2 = 已暂停

3 = 正在联接

-1 = 未知
is_current_owner bit 1 表示此节点是SQL Server故障转移群集资源的当前所有者。
pdw_node_id int 适用于:Azure Synapse Analytics、Analytics Platform System (PDW)

此分发所在节点的标识符。

备注

启用故障转移群集后,SQL Server实例可以在故障转移群集的任何节点上运行,这些节点指定为SQL Server故障转移群集实例的一部分 (虚拟服务器) 配置。

注意

该视图替换 fn_virtualservernodes 函数,在将来的版本中不推荐使用该函数。

权限

需要对 SQL Server 实例具有 VIEW SERVER STATE 权限。

SQL Server 2022 及更高版本的权限

需要对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。

示例

下面的示例使用 sys. dm_os_cluster_nodes 返回群集服务器实例上的节点。

SELECT NodeName, status, status_description, is_current_owner   
FROM sys.dm_os_cluster_nodes;  

下面是结果集:

NodeName 状态 status_description is_current_owner
node1 0 已启动 1
node2 0 已启动 0
Node3 1 0

另请参阅

sys.dm_os_cluster_properties (Transact-SQL)
sys.dm_io_cluster_shared_drives (Transact-SQL)
sys.fn_virtualservernodes (Transact-SQL)
动态管理视图和函数 (Transact-SQL)