将 VLDB 迁移到 AlwaysON AG

Gre*_*ock 6 sql-server migration sql-server-2012 availability-groups

我已经使用 AlwaysON AG 很长时间了,目前在 120 个数据库和 3 个 AG 组中拥有大约 10TB 的数据,用于 SQL 2012 上的任何应用程序并取得了巨大成功。每个 AG 组在补丁级别 11.0.5058.0 上运行,主数据中心有 2 个同步副本(在不同的 SAN 上),DR 中有 1 个异步副本。迁移一直不是问题,因为没有一个数据库足够大,以至于我无法适应 SAT 早上 12 点到 4 点的维护窗口。

我的问题是,我最后一个迁移到 2012 年的应用程序包含一个 4TB TDE 加密数据库数据库,它比我之前迁移的任何应用程序大 10 倍左右。数据库在大量调优后需要 4 小时才能备份(我讨厌 TDE !!)

由于种子增量,恢复到主副本是即时的,但问题来自必须在添加到可用性组之前备份数据库。4 小时是我的确切停电窗口,我不能再得到更多了。

我迁移应用程序的计划是 -

第一个中断窗口

  1. 从 2008 年到 2012 年的主副本还原数据库

  2. 将应用程序 ARECORD(或 cname 不确定是哪个)更改为主副本

  3. 在单个节点上运行数据库直到下一个中​​断窗口

一周后:

  1. 将数据库添加到可用性组
  2. 将 ARCORD/CNAME 更改为侦听器

我不喜欢这个的地方是我整个星期都用 1 个节点而不是 3 个节点,这很令人担忧。如果其他人对如何实现这一点有任何更好的想法,我很乐意听取您的意见,或在可用性组中使用 VLDB 的人员的任何类型的评论,以及您喜欢/讨厌/喜欢这样做的地方。我正在尝试全力以赴地使用这个软件,到目前为止我一直很喜欢它,但在涉及到 VLDB 迁移时却很担心。

小智 1

数据库具有完整备份的要求仅由向导强制执行。如果您在创建可用性组后添加数据库,则可以在主数据库和辅助数据库上还原相同的备份,然后将数据库添加到可用性组。为了在维护时段节省时间,我们通常提前恢复完整备份并在维护时段进行差异备份。

  1. 对正在移动的数据库进行完整备份。
  2. 在新主数据库上使用 NORECOVERY恢复完整备份,这可确保在辅助数据库准备就绪之前不会使用数据库。
  3. 在新的辅助数据库上使用 NORECOVERY恢复相同的完整备份,这是将它们添加到 AG 所必需的。
  4. 使用 RECOVERY 恢复主数据库。RESTORE DATABASE [MyBigDB] WITH RECOVERY;
  5. 在主实例上,导航到 AlwaysOn High Availability > 可用性组 > MyAG > 右键单击​​可用性数据库 > 添加数据库
  6. 选择您的数据库在此输入图像描述
  7. 选择仅加入 在此输入图像描述
  8. 连接到辅助实例在此输入图像描述
  9. 应跳过所有验证在此输入图像描述
  10. 验证所有内容并单击“完成”或“保存脚本”。在此输入图像描述
  11. 通过查看可用性组仪表板验证同步是否发生在此输入图像描述