更新时间:2024-07-29 GMT+08:00

迁移方案说明

迁移工具

表1 Redis迁移工具对比

工具/命令/服务

特点

说明

DCS控制台界面一键式迁移

操作简单,同时支持在线迁移和离线迁移(备份文件导入)两种方式,其中在线迁移支持增量数据迁移。

  • 离线迁移,适用于源Redis和目标Redis网络不连通、源Redis不支持SYNC/PSYNC命令的场景。需要将数据备份文件导入到OBS,DCS从OBS桶中读取数据,将数据迁移到DCS的Redis中。
  • 在线迁移,涉及到SYNC/PSYNC命令,适用于源Redis放通了SYNC/PSYNC命令的场景。支持将源Redis中的数据全量迁移或增量迁移到目标Redis中。

Redis-cli

  • Redis自带命令行工具,支持导出RDB文件,也支持将持久化的AOF文件整库导入。
  • AOF文件为所有数据更改命令的全量集合,数据文件稍大。

-

Rump

支持在线迁移,支持在同一个实例的不同数据库之间,以及不同实例的数据库之间迁移。

不支持增量迁移。

建议停业务后迁移,避免出现Key丢失。详情参考使用Rump在线迁移其他云厂商Redis

RedisShake

在线迁移和离线迁移均支持的一款开源工具。

适用于Cluster集群的数据迁移。

自行开发迁移脚本

灵活,根据实际情况适配。

-

迁移方案

自建Redis,指的是在本服务、其他云厂商、本地数据中心自行搭建的Redis。

表2 迁移方案

迁移场景

工具

迁移案例

迁移说明

自建Redis迁移至DCS

DCS控制台界面一键式迁移

-

Redis-cli

使用Redis-cli离线迁移自建Redis(AOF文件)

-

使用Redis-cli离线迁移自建Redis(RDB文件)

-

RedisShake

使用RedisShake工具在线迁移自建Redis Cluster集群

-

DCS实例间迁移

DCS控制台界面一键式迁移

低版本Redis实例迁移到高版本Redis实例,例如Redis 3.0迁移至Redis 4.0/5.0/6.0:

由于Redis不同版本存在数据兼容问题,建议高版本不要迁移到低版本,否则迁移失败

不同Region的Redis实例迁移,推荐使用备份文件离线迁移DCS Redis实例

由于DCS Redis实例默认是禁用了SYNC和PSYNC命令,在相同Region执行在线迁移时,会默认放通SYNC和PSYNC命令,但是在不同Region迁移时,没有放通该命令操作,所以无法使用在线迁移,推荐使用备份文件迁移。

不同账号的Redis实例迁移,例如从账号A迁移到账号B:

-

其他云厂商Redis服务迁移至DCS

DCS控制台界面一键式迁移

如果需要使用在线迁移,建议联系其他云厂商运维人员放通SYNC和PSYNC命令。

Rump

使用Rump在线迁移其他云厂商Redis

-

RedisShake

使用RedisShake离线迁移其他云厂商Redis

-

使用RedisShake在线迁移其他云厂商Redis

-