需要一些关于从数据库镜像迁移到 AOAG 的实用/一般指导
当前设置 - 2 个独立服务器,数据库镜像配置为异步。
- 服务器 A:运行 SQL Server 2017 的 Windows 2016,无集群,简单的独立服务器作为主服务器
- 服务器 B:运行 SQL Server 2017 的 Windows 2016,无集群,简单的独立服务器作为镜像
- 文件共享服务器将在不同的 DC 中提供
服务器之间的距离约为 150 英里。
我们只需要使用上述服务器并将数据库镜像转换为具有自动故障转移选项的 AG,以提供 HA 作为奖励,因为通过上述设置,它主要是一个 DR 解决方案。
Clusterless AG 找到了我,但似乎 HA 不可用,因为自动故障转移可能不起作用。我在这里遗漏了什么还是有可能?
如果需要,我们最多可以中断 8 小时以将 db 镜像转换为 AG。
我应该如何计划或是否有任何可用资源来做到这一点?找了很多文章都没找到,求指教
作为一般规则,这种迁移应该很简单。AG 使用数据库镜像框架和端点来传输日志块,因此转换非常简单。
需要注意的一件事是您当前异步运行镜像,但您已声明要运行 AG同步以提供 HA。这应该不是问题,但是您需要检查服务器之间的延迟,以确保您不会产生阻碍写入性能的瓶颈。
同步提交 AG 要求在将所有事务提交到主服务器之前,将它们强化到辅助服务器的日志中,因此如果服务器之间 150 英里的延迟太高,这可能会导致严重的性能问题。
不,你是对的。无集群 AG 或读取规模可用性组不是 HA 选项。读取规模可用性组中没有自动故障转移。请参阅此处的此链接,其中指出:
对于你的第二点-
您可以执行以下操作:
其中一些步骤需要重新启动服务器或 SQL Server 实例,因此会出现多次中断,但每次都比您允许的 8 小时短。
这是一个非常简单的概述,需要对流程进行测试,并在生产中运行之前识别和解决任何问题。如果您有一个非生产环境,请从那里开始并编写每个步骤的脚本,以便您可以准确地重播生产中的操作。
如果您没有非生产环境,请让您的系统管理员将您的服务器克隆到一个隔离的网络中,您可以在其中练习更改。如果您正在运行物理服务器,那么在没有非生产环境的情况下进行测试将会很困难,但是您可以在 Azure 或 AWS 中构建一个类似的环境来试运行该过程。
这是为 AG 配置集群的有用链接。它有点旧,但信息仍然有效。如果您对这个过程没有信心,特别是如果您没有可用的非生产环境,最好聘请可以为您计划和执行此过程的第三方承包商/顾问/专家。