将数据库从一个可用性组移动到另一个位于不同 SQL 实例上的可用性组
Posted
技术标签:
【中文标题】将数据库从一个可用性组移动到另一个位于不同 SQL 实例上的可用性组【英文标题】:Moving Database from one availability Group to another sitting on different SQL Instance 【发布时间】:2018-10-30 10:46:28 【问题描述】:我们已经配置了三个集群节点(2 个在同一个数据中心用于 HA,另一个在不同的数据中心用于 DR)。每个节点上都有三个 SQL 实例。我们为每个实例创建了一个 AG。现在我们有一种情况,我们想将数据库从一个 AG 组移动到另一个位于不同 SQL 实例上的 AG 组。
从一个 AG 组到另一个 AG 组的数据库迁移
下图
我们希望将 DB 4 和 DB 5 从节点 1 上的 AG 1(实例 1)移动到节点 2 上的 AG 2 Primary(实例 2)。这是可以实现的吗?如果是,请帮助我们完成步骤。非常感谢任何帮助或指导。注意: - 数据库已存在于 AG1 辅助实例 2 上。因此,我们不需要(或不想)将数据库复制到节点上的实例 2。
【问题讨论】:
【参考方案1】:Always On 可用性组支持在辅助副本上进行备份。您可以先为备份任务创建维护计划,然后在实例上恢复数据库和日志备份。请参考Offload supported backups to secondary replicas of an availability group。
请注意,您只能对数据库执行仅复制完整备份。但是对于执行日志备份,辅助副本不支持 COPY_ONLY 选项。
【讨论】:
以上是关于将数据库从一个可用性组移动到另一个位于不同 SQL 实例上的可用性组的主要内容,如果未能解决你的问题,请参考以下文章
如何编写 SQL 命令将所有旧数据从访问表移动到另一个数据库/表?
SQL Server 2008 查询将表数据从一个移动到另一个