共用方式為


sys.dm_hadr_cluster_members (Transact-SQL)

適用於:SQL ServerAzure SQL 資料庫

如果裝載 Always On 可用性群組啟用之 SQL Server 本機實例的 WSFC 節點具有 WSFC 仲裁,則針對構成仲裁的每個成員以及每個成員的狀態傳回一個數據列。 這包括叢集中的所有節點(由 Clusterenum 函式傳回CLUSTER_ENUM_NODE類型)和磁碟或檔案共享見證,如果有的話。 針對指定成員傳回的數據列包含該成員狀態的相關信息。 例如,針對具有多數節點仲裁的五個節點叢集,其中一個節點已關閉,當從已啟用 Always On 可用性群組的伺服器實例進行查詢時 sys.dm_hadr_cluster_members ,該實例位於具有仲裁的節點上, sys.dm_hadr_cluster_members 會將向下節點的狀態反映為 NODE_DOWN

如果 WSFC 節點沒有仲裁,則不傳回任何資料列。

使用此動態管理檢視來回答下列問題:

  • 哪些節點目前在 WSFC 叢集上執行?

  • WSFC 叢集在多數節點案例中失去仲裁之前,可以容忍多少個失敗?

提示

從 SQL Server 2014 (12.x)開始,此動態管理檢視除了可用性群組之外,還支援 Always On 故障轉移叢集實例 (FCI)。

資料行名稱 資料類型 描述
member_name nvarchar(128) 成員名稱,可以是計算機名稱、驅動器號或檔案共享路徑。
member_type tinyint 成員的類型,其中一種:

0 = WSFC 節點

1 = 磁盘見證
2 = 檔案共享見證
3 = 雲端見證
member_type_desc nvarchar(50) 的描述, member_type其中一個:

CLUSTER_NODE
DISK_WITNESS
FILE_SHARE_WITNESS
CLOUD_WITNESS
member_state tinyint 成員狀態,其中一個:

0 = 離線
1 = 在線
member_state_desc nvarchar(60) 的描述, member_state其中一個:

UP
number_of_quorum_votes tinyint 這個仲裁成員擁有的仲裁投票數。 針對 [無多數:僅磁碟報價],此值預設為0。 對於其他仲裁類型,這個值預設為1。

備註

在 Windows Server 故障轉移叢集 (WSFC) 中,叢集數據行會顯示 Windows 叢集詳細數據。 如果沒有 Windows 叢集,例如讀取級別可用性群組或 Linux 上的可用性群組,與叢集相關的數據行可能會顯示內部預設叢集的相關數據。 這些資料行僅供內部使用,而且可以忽略。

權限

針對 SQL Server 2019 (15.x) 和舊版,需要伺服器的 VIEW SERVER STATE 許可權。

針對 SQL Server 2022 (16.x) 和更新版本,需要伺服器的 VIEW SERVER PERFORMANCE STATE 許可權。