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 代理添加为故障转移群集资源组中的资源:
根据您在问题中的评论,您需要做的是两方面的事情:
第一步,一种方法是通过 PowerShell(利用 FailoverClusters 模块):
分别执行每个代码块,而不是一次全部执行。在盲目地尝试添加之前,您将能够确认该集群资源类型是否存在。
然后对于第二步,您需要执行以下操作以将 SQL Server 代理添加为故障转移群集资源组中的资源:
您可能需要进入以下位置的注册表并确保将这些键(一个将包含字符串“AGENT”,另一个将包含“SQL_ENGINE”)设置为 1(这是记录正确安装的位置。1 表示正确安装):
这应该让您现在可以安装一个附加节点并显示 SQL Server 代理服务帐户。当然,在开始之前,请确保您已退出此处(尤其是在注册表编辑时)。