Sql-Server

將新節點添加到 SQL Server 2012 故障轉移群集時出現問題

  • November 28, 2013
  • 我嘗試向 SQL Server(2012 標準)故障轉移添加一個新節點,該節點已安裝在 Windows2012 故障轉移群集中的另一個節點上
  • 我在輸入 SQL Server 代理帳戶名稱時遇到不可編輯欄位的問題
  • 可能存在與 SQL Server 數據庫引擎 (ei) 相同的 AD 名稱
  • 我的帳戶訪問權限沒有 AD 管理員權限
  • 父節點上 SQL Server 代理的訪問、帳戶和設置是可訪問和可設置的

在此處輸入圖像描述

根據您在問題中的評論,您需要做的是兩方面的事情:

  1. 將 SQL Server 代理添加為群集資源類型
  2. 將 SQL Server 代理群集資源添加到故障轉移群集資源組

第一步,一種方法是通過 PowerShell(利用 FailoverClusters 模組):

Import-Module -Name FailoverClusters

$ClusterName = "YourClusterName"
$FciClusterGroupName = "SQL Server (MSSQLSERVER)" # may need to modify to reflect your environment

# check to see if you have the SQL Server Agent cluster resource type
Get-Cluster -Name $ClusterName |
   Get-ClusterResourceType |
   Where-Object {$_.Name -eq "SQL Server Agent"}

# if not, add it
Add-ClusterResourceType -Name "SQL Server Agent" -Dll "sqagtres.dll"

分別執行每個程式碼塊,而不是一次全部執行。在盲目地嘗試添加之前,您將能夠確認該集群資源類型是否存在。

然後對於第二步,您需要執行以下操作以將 SQL Server 代理添加為故障轉移群集資源組中的資源:

  1. 右鍵點擊故障轉移群集管理器中的 FCI 資源組
  2. 選擇“添加資源”並選擇 SQL Server 代理資源類型
  3. 將新的群集資源重命名為“SQL Server 代理”
  4. 進入新的 SQL Server 代理資源屬性並設置虛擬網路名稱和實例名稱屬性
  5. 在依賴項選項卡上,將 SQL Server 設置為其依賴項資源

您可能需要進入以下位置的系統資料庫並確保將這些鍵(一個將包含字元串“AGENT”,另一個將包含“SQL_ENGINE”)設置為 1(這是記錄正確安裝的位置。1 表示正確安裝):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\YOURINSTANCE\ConfigurationState

應該讓您現在可以安裝一個附加節點並顯示 SQL Server 代理服務帳戶。當然,在開始之前,請確保您已退出此處(尤其是在系統資料庫編輯時)。

引用自:https://dba.stackexchange.com/questions/45281