数据库迁移方案

Posted 第三眼的思绪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库迁移方案相关的知识,希望对你有一定的参考价值。

方案一 MQ迁移缓冲+单双写

不停服,增加缓冲层(MQ)。数据迁移过程中增量数据写入缓冲MQ,在数据迁移完成、缓冲层数据消费完成后,打开开关开始双写数据库,业务验证正常后关闭旧库读写(开关与验证遵循先关闭旧库表读验证通过再关闭旧库表写原则)。

  • 推荐指数 ☆☆☆☆☆
  • 优点:对用户无感,有回滚方案
  • 缺点:操作成本高、方案操作节点、引入组件较多、研发和测试流程需要严格把控


方案二 主动迁移+被动迁移+双写

当打开开关进行迁移过程中发生数据访问时,强制将客户端要访问的数据立刻迁移(被动迁移),然后再双写处理该数据请求;同时通过外挂程序或指令将源库表数据复制到迁移目标数据中,如果迁移目标库表中已存在则忽略,当迁移完成并验证通过后关闭旧库读写(开关与验证遵循先关闭旧库表读验证通过再关闭旧库表写原则)。

  • 推荐指数 ☆☆☆☆
  • 优点: 对用户无感,有回滚方案
  • 缺点:操作成本高、研发和测试流程需要严格把控

以上是关于数据库迁移方案的主要内容,如果未能解决你的问题,请参考以下文章

数据库数据迁移的3种方案学习

支持“WeShopDb”上下文的模型已在数据库创建后发生更改。请考虑使用 Code First 迁移更新数据库

“零感知”在线迁移解决方案

轻量级迁移核心数据

SQL迁移工具[关闭]

Flyway 迁移的最长执行时间