工具介绍
redis-sync:支持在 Redis 实例之间进行数据迁移。
redis-restore:支持将 Redis 的备份文件(RDB)导入到指定 Redis 实例。
redis-dump:支持将 Redis 的数据备份为 RDB 格式文件。
redis-decode:支持将 Redis 备份文件(RDB)解析为可读的文件。
兼容版本
支持源 Redis 2.8、3.0、4.0 版本。
支持目标实例为 Redis 2.8、3.0、3.2、4.0 版本,以及云数据库的所有版本,包括 Redis 内存版、CKV 版。
redis-sync 在线迁移
迁移原理
redis-sync 工具分为两大模块,该工具模拟位复制节点,从源实例持续同步数据,并将复制的数据翻译成写入命令更新到目标实例。
复制数据分为两个阶段,全量同步阶段和增量同步阶段。
说明:
目标实例的 DB 数量要求大于源实例的 DB 数量,否则迁移将失败。
如果迁移中途因为网络中断或者其他原因断开,需要先清空目标实例然后再次执行迁移,否则可能出现脏数据。
迁移的进度,日志显示 "sync: rdb = 9063349 - [100.00%]" 表示全量数据已经完成同步,正在进行增量数据同步,"speed=(0/0,0/0,0)" 表示增量数据已经完成同步。
停止迁移,通过 Ctrl+C 键或者其他方式终止工具的执行,即可停止数据同步。
参数说明
-n:并发写入的任务数量,建议不设置或者设置为 CPU 核心数量 * 2。
-m:源实例地址,格式为"password"@ip:port
,免密码认证下格式为ip:port
。
-t:目标实例地址,格式为"password"@ip:port
,免密码认证下格式为ip:port
。
--tmpfile=FILE:临时文件名称。
--tmpfile-size=SIZE:临时文件最大长度。
--help:查看帮助命令。
使用示例
./redis-sync -m 127.0.0.1:6379 -t "xxx2018"@10.0.5.8:6379
输出日志
[root@VM_5_16_centos bin]
本页内容是否解决了您的问题?