You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

跨AWS账号迁移RDS实例数据如何实现应用无停机?

AWS RDS跨账号不停服迁移可行方案

以下方案均可以实现迁移过程源库正常对外提供服务,仅流量切换阶段有秒级甚至无感知中断,完全满足不停服要求:

方案1:使用AWS Database Migration Service(DMS)

这是AWS官方原生的迁移方案,兼容RDS支持的所有主流数据库引擎(MySQL、PostgreSQL、SQL Server等):

  • 提前开启源RDS实例的自动备份,将日志保留时长设置为不低于预计的迁移周期,同时开启逻辑复制配置:MySQL需将binlog格式设为ROW,PostgreSQL需将wal_level参数设为logical
  • 打通源AWS账号和目标AWS账号的网络(可以通过VPC对等连接、公网白名单等方式),确保目标账号的网络可以正常访问源RDS实例
  • 在目标AWS账号下创建DMS实例,分别配置指向源RDS的源端点、指向目标账号RDS的目标端点
  • 创建迁移任务,勾选全量迁移+后续增量数据同步选项,启动任务后等待全量迁移完成、增量数据追平源库
  • 持续观察1-2小时确认两边数据完全一致、同步无延迟后,将Spring Boot应用的数据库连接配置切换到目标RDS,流量稳定后即可下线旧环境资源

方案2:数据库原生主从复制同步

适合熟悉对应数据库引擎底层逻辑的团队,无需额外支付DMS服务费用:

  • 在源AWS账号下为源RDS创建一个临时只读副本,配置该副本的安全组规则,允许目标AWS账号的网络访问
  • 目标账号下创建完RDS实例后,将其配置为上述临时只读副本的从库,开启数据库原生的主从同步
  • 待同步无延迟、两边数据校验一致后,断开主从关系,将应用流量切到目标账号的RDS即可

方案3:逻辑备份+增量日志追平

适合数据量在100G以内的中小规模场景,可控性最高:

  • 业务低峰期对源RDS执行无锁逻辑备份:MySQL使用mysqldump --single-transaction命令,PostgreSQL使用pg_dump命令,记录备份完成时对应的日志位点(MySQL的binlog位点、PostgreSQL的LSN号)
  • 将备份文件导入到目标账号的RDS实例
  • 拉取源RDS从备份位点之后的增量日志(binlog/WAL日志),逐笔重放到目标RDS实例,直到两边数据完全同步
  • 校验数据一致后切换应用流量到目标RDS

迁移前置校验要求

  • 提前在测试环境模拟完整迁移流程,验证数据一致性和切换过程的业务可用性
  • 迁移全程开启源库和目标库的性能监控、错误日志监控,避免迁移任务占用过多资源影响线上业务
  • 流量切换前必须做至少一次全量数据比对,确认两边数据无差异后再执行切换操作

内容的提问来源于stack exchange,提问作者Joy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 17:45:07