首页/数据/Redis 进阶速查/换机迁移:快照加配置的完整流程
持久化56 条

换机迁移:快照加配置的完整流程

迁移流程:老机 BGSAVE 取快照(或等主从追平后提升从库)→ 传送到新机 → 挂载目录改配置启动 → 核对数据与业务冒烟,最后切流量。

Redis 进阶速查数据更新于 2026-10-13

换机迁移的两条路

换机迁移有两条常见路径。第一条是停机迁移:老机执行一次后台快照,确认完成后把文件拷到新机,按与原机一致的配置启动,再核对数据。第二条是近乎不停机的做法:新机先作为从库挂到老机,等复制追平后停止写入、把新机提升为主库,再切换流量。后者把停机窗口压缩到切换的瞬间,代价是过程中需要管理主从关系与偏移对齐。

基本信息

快照迁移需要停机窗口,步骤简单直观
从库迁移停机窗口极短,依赖复制追平
核对手段DBSIZE 对比加业务抽样
关键前置新机配置与老机逐项对齐
收尾切换流量后观察一段时间再下线老机

典型使用场景

  • 服务器到期或硬件更换时的整机迁移
  • 跨机房或跨云搬迁,与流量切换方案配合
  • 版本升级:新机部署新版本,追平后一次性切换
  • 配置标准化:借迁移把历史遗留参数一并纠正
  • 演练迁移流程,验证回滚路径是否真的可行

从库迁移思路

从库迁移思路
# 新机启动后先挂为从库
redis-cli REPLICAOF <老机IP> 6379
redis-cli INFO replication | grep -E 'master_link_status|master_last_io_seconds_ago'
redis-cli DBSIZE                              # 与老机对比键数量
# 追平并停写之后再提升
redis-cli REPLICAOF NO ONE
redis-cli INFO replication | grep role        # 确认已成为主库
redis-cli INFO keyspace                      # 核对数据规模

两种方式对比

方式停机窗口适用场景
快照迁移等于拷贝与启动耗时数据量不大,可安排停机窗口
从库迁移仅切换瞬间不允许停机、数据量大的场景
共同要求配置对齐与数据核对缺一不可,否则迁移后行为漂移
回滚准备保留老机与旧数据切换异常时可以快速回退
从库迁移的关键是切换前复制延迟接近零。延迟没有追平就提升,会丢掉尚未同步的写入;切换完成后也不要立刻下线老机,要留出一段可回滚的窗口。
新机上的内存上限、持久化配置、访问控制等参数必须与老机逐项对齐。不一致的典型表现是迁移后「性能突然变了」或「出现权限报错」,排查成本很高,不如迁移前逐条核对。

易错点

  • 切换瞬间老机仍在接受写入,产生数据丢失且没有对账记录
  • 新机配置未对齐,迁移后行为与老机不同,表现为莫须有的性能差异
  • 提升与流量切换之间没有停写,两个实例同时接受写入,产生数据分叉
  • 迁移后立即销毁老机与旧数据,出现问题时不具备回退路径

数据来源与参考

  • Redis 官方文档:REPLICAOF 与迁移说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌