SqlServer Alwayson 搭建排错记录(一)

这几天搭建alwayson,碰到一堆问题,解决起来花了不少时间,特此记下几个有代表性的,以免以后再碰到做重复功。

一、创建可用性组

     使用SSMS的创建可用性组向导,添加了一个主副本node1,一个辅助副本node3,最后一步完成的时候报错:

无法对可用性组"XXXXX"创建、联接或添加副本,因为节点“node3”是副本“node1”和"node3"的可能所有者。
如果一个副本是故障转移群集实例,请从其可能的所有者中删除重叠的节点,然后再试。(错误:19405)

  

 解决方法:

1)在服务器的故障转移群集管理器中,找到群集下面的角色(图中标1位置),点击要在上面搭建alwayson的角色(图中标2位置),切换到“资源”选项卡,在服务器名称上(图中标3位置)右键属性,在弹出的属性对话框中选择“高级策略”选项卡,可以看到“可能的所有者”列表框中列出了群集内的节点名称,把其他的勾上,Node3的勾取消,点击确定。

同样的方法,将“其他资源”和“角色”组下面的对象都将node3从可能的所有者中取消勾线。

这样,理论上node3就不是Node1和Node3的可能所有者了。

2)在powershell中修改群集的可能所有者

在powershell命令行中运行get-ClusterResource命令,查看群集内的resource

上面的SQL Server就是1)中的其他资源,使用Get-ClusterOwnerNode查看“SQL Server”的可能所有者

可能所有者有node1,node2,node3三个节点,使用cmdlet命令修改SQL Server的ClusterOwnerNode

Get-ClusterResource -Name "SQL Server" | Set-ClusterOwnerNode -Owners node1,node2

  其中“SQL Server”就是上面查询出来的Resource,node1,node2就是群集里面的其余节点。

再次查看"SQL Server"下的ownerNodes就没有了node3。用同样方法修改其他对象,这时再创建可用性组,就成功了。

 

参考资料:https://dba.stackexchange.com/questions/142603/failed-to-create-join-or-add-replica-to-availability-group-in-sql-server-2014

posted on 2018-07-11 21:58  wangguanguo  阅读(556)  评论(0编辑  收藏  举报

导航