Fylix Asked: 2022-09-24 11:19:04 +0800 CST2022-09-24 11:19:04 +0800 CST 2022-09-24 11:19:04 +0800 CST 从 FCI 中删除 MSSQL 数据库 772 我有三个数据库节点,节点 1 和 2 使用故障转移集群实例参与 HA。节点 3 使用 SQL Always On 可用性组充当 DR,类似于下图: 我真的很想摆脱 HA 部分,这样我就只剩下节点 1 和节点 3 了。如果我不关心节点 2,如何正确删除它,以便节点 1 不再参与 FCI? 当我在 Window Failover Cluster Manager 中查看 FCI 角色时,我看到了删除选项,就这么简单吗?我内心的声音在尖叫不,因为聚集了简单的反面。 sql-server availability-groups 2 个回答 Voted Sean Gallardy 2022-09-24T11:39:49+08:002022-09-24T11:39:49+08:00 如果我不关心节点 2,如何正确删除它,以便节点 1 不再参与 FCI? 无法从 FCI 更改为独立实例。您需要在节点 1 上安装独立实例,恢复数据库(除非重新使用相同的磁盘,但要小心,因为需要删除共享,并且在 FCI 完成之前无法重复使用磁盘销毁),然后使用Remove Node节点 2 的选项(必须在节点 2 上运行)。 此时您将拥有节点 1 和节点 3。节点 1 仍然是 FCI。您将要删除整个 AG。 成功使用Remove Node节点 1 后。此时,如果重新使用磁盘,您可以将数据库附加到节点 1 单机版,否则应该恢复它们(如果尚未完成)。 现在,这将使您处于 Node 1 Stand-Alone 和 Node 3 Stand-Alone。如果您愿意,请使用您最喜欢的方法将客户重新指向旧名称,如果没有,请继续。 在新的 Node 1 Stand-Alone 和 Node 3 Stand-Alone 之间设置 AG。 当我在 Window Failover Cluster Manager 中查看 FCI 角色时,我看到了删除选项,就这么简单吗?我内心的声音在尖叫不,因为聚集了简单的反面。 你内心的声音是正确的,不要这样做。我很高兴你听了! Best Answer David Browne - Microsoft 2022-09-24T15:35:09+08:002022-09-24T15:35:09+08:00 我会驱逐 Node1,并用新的存储重建它。在新的Node1上安装一个独立的SQL实例,加入集群,加入AG。然后从 AG 中移除 Node2,卸载 Node2 上的 FCI,并将其从集群中逐出。 这样你就可以保留 AG,避免在生产服务器上安装东西,并用新构建的独立实例替换你的 2 节点 FCI。
无法从 FCI 更改为独立实例。您需要在节点 1 上安装独立实例,恢复数据库(除非重新使用相同的磁盘,但要小心,因为需要删除共享,并且在 FCI 完成之前无法重复使用磁盘销毁),然后使用
Remove Node
节点 2 的选项(必须在节点 2 上运行)。此时您将拥有节点 1 和节点 3。节点 1 仍然是 FCI。您将要删除整个 AG。
成功使用
Remove Node
节点 1 后。此时,如果重新使用磁盘,您可以将数据库附加到节点 1 单机版,否则应该恢复它们(如果尚未完成)。现在,这将使您处于 Node 1 Stand-Alone 和 Node 3 Stand-Alone。如果您愿意,请使用您最喜欢的方法将客户重新指向旧名称,如果没有,请继续。
在新的 Node 1 Stand-Alone 和 Node 3 Stand-Alone 之间设置 AG。
你内心的声音是正确的,不要这样做。我很高兴你听了!
我会驱逐 Node1,并用新的存储重建它。在新的Node1上安装一个独立的SQL实例,加入集群,加入AG。然后从 AG 中移除 Node2,卸载 Node2 上的 FCI,并将其从集群中逐出。
这样你就可以保留 AG,避免在生产服务器上安装东西,并用新构建的独立实例替换你的 2 节点 FCI。