我们遇到了SQL Server 2008单节点群集挂起的奇怪情况。 作为背景,我们正在使用Windows 2008和SQL Server 2008重buildWindows Server 2003 / SQL Server 2005双节点群集。以下是时间表:
- 从Windows 2003 / SQL 2005集群中逐出被动节点(服务器B)。 主动节点现在可以作为单节点群集使用,没有任何问题。
- 擦除服务器B的磁盘,并将Windows 2008和SQL Server 2008安装为单节点集群。 由于我们不想让这两个集群进行通信,所以我们将集群的专用networking“心跳”适配器取消configuration。 群集出现并正常运行。
- 将所有数据库移至新群集。 群集继续正常运行。
- closures服务器A(旧集群)以准备重build作为新集群的第二个节点。
- 服务器B上的SQL Server实例(新群集)会locking ,即使它不应该知道或与服务器A交互。
- 重新启动服务器A.服务器B(新群集)上的SQL Server实例立即重新开始工作。
我们试过的东西:
- 即使SQL Server挂起,新群集的名称也会响应ping和NETBIOS请求。
- 我们已经确认,旧的心跳适配器没有分配IP地址,也没有从DHCP获取IP地址。
- 禁用心跳的网卡具有相同的效果。
- 在任何日志中都没有生成错误 – Windows或SQL。
- 当第一次出现错误时,在有人想清楚发生了什么事之前,它已经挂了很长一段时间(超过10分钟)。 这看起来可以消除任何正常的群集超时,在这种情况下,它一直在search另一个节点(即使已经configuration了一个)。
服务器B运行Windows 2008 SP2,已完全修补,SQL Server 2008 SP1 CU7(10.0.2775)。
外观与我的问题类似: 在SQL Server 2008故障转移群集中备用节点处于脱机状态时,故障转移群集中实例的间歇性不可用问题群集在心跳卡不可用时挂起群集。