我遇到了 SQL 2012 可用性组问题,关闭服务时不会进行故障转移。关闭服务时,您会收到错误:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确以及 SQL Server 是否已配置为允许远程连接。
看起来监听器仍然在尝试监听刚刚关闭的节点。
如果我尝试在 SSMS 中手动进行故障转移,它会成功故障转移。
我不确定这个问题的根本原因到底是什么,因为我之前能够关闭该服务,并且它会进行故障转移。我以为问题已经解决了。
我已尝试将指定时间段内的最大故障次数设置为每小时 25 次。
答案1
欢迎将其添加到评论中,但您需要提供更多详细信息 - 您使用的是什么操作系统,您的侦听器是如何配置的,您的集群中有多少个节点,有多少个副本,您的仲裁是如何配置的,所有节点/副本是否都在同一个子掩码中???我可以列举出一些您没有自动失败的原因
- 如果你使用的是 2012 年之前的操作系统,你可能会遭遇“最后站立”问题
- 如果你有偶数个节点/副本,则需要配置奇数个节点进行仲裁
- 如果你在不同的子掩码中有节点/副本,则需要确保侦听器正在侦听两者
- 您的节点是否运行双 NiC 来包含心跳?如果没有,您可能需要添加硬件并进行相应配置
列表还很长。更多信息将会很有帮助。
答案2
解决了关闭节点上的 SQL 服务之一时可用性组将保持脱机状态的问题。我不知道为什么会发生这种情况,因为它曾经正常工作。我只能说这是人为错误。
我需要做的: - 管理工具 --> 故障转移群集管理器 --> 服务和应用程序 --> --> 其他资源 --> --> 单击启用自动启动。
我一定是不小心点击了禁用,因为我不记得设置过它。现在当我关闭服务时,它会按预期成功重新启动。