我目前在三台计算机之间进行镜像设置,原则、镜像和见证。白天,所有这些系统都很好;他们使用故障转移命令进行故障转移,并在拔出任何站时进行故障转移。我的问题是在晚上我失去了三个站之间的仲裁,而恢复它的唯一方法是重新启动见证 SQL Server。失去 Quorum 的最糟糕的事情是所有站都恢复到恢复模式,这导致数据库无法使用。就好像连接所有站点的路由器都坏了一样。
我已经尝试过计算机名称和 IP 地址,但没有任何运气。我在许多其他客户中运行了类似的设置,所以我认为这不是我们设置 SQL 服务器或镜像的方式。我将路由器安装在带浪涌保护的 UPS 上,并且路由器已更换多次,所以我知道它不是路由器。镜像站已经更换,硬件和软件,因为一些其他问题仍在发生。我唯一的其他解决方案是更换见证人,但如果这不起作用,我完全没有想法。
以下是仲裁失败时产生的错误的日志文件。此错误消息显示在所有 SQL Server 上。
09/09/2009 10:07:48,spid20s,未知,数据库镜像连接错误 4 '接收数据时出错:'64(指定的网络名称不再可用。)'。对于“TCP://Silver1:15111”。
09/09/2009 10:07:48,spid20s,未知,错误:1474 严重性:16 状态:1。
2009 年 9 月 9 日 10:06:16,spid19s,未知,数据库镜像连接错误 2 'DNS 查找失败,错误:'11001(不知道这样的主机。)'。对于“TCP://Silver2:15111”。
09/09/2009 10:06:16,spid19s,未知,错误:1474 严重性:16 状态:1。
另请注意,此设置不使用证书或任何东西。所有用户都有相同的用户名和密码,所以我知道这是一个有效的解决方案,而不必在域中。