redis数据迁移

Posted 若丶相依

tags:

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

一:AOF方式

需求: 一个没有数据的redis

清空redis数据方法

bash> echo "keys *" | redis-cli --raw -p 6378 |sed -r ‘s/(.*)/redis-cli --raw -p 6378 del \1 /g‘ |bash

1.备份

bash> redis-cli --raw -p 6378

redis> config get dir #查看aof文件保存路径

redis> config set appendonly yes #允许调用fsyncAOF日志同步到硬盘

redis> SLAVEOF 192.168.10.52 6378 #需要备份的服务器的ip端口

bash > cat $dir/appendonly.aof #查看备份的aof日志

redis> SLAVEOF NO ONE #取消主从同步

redis> config set appendonly no #取消调用fsync


2.还原

bash> redis-cli --raw -p 6378

redis> config set appendonly yes #允许调用fsyncAOF日志同步到硬盘

redis> redis-cli --raw -p 6378 --pipe < appendonly.aof #将文件进行导入

redis> config set appendonly no #取消调用fsync

redis> keys * #查看备份的数据


二:RDB方式

1.在要备份的redis上执行sync命令后停掉服务

2.停掉备份服务器的redis

2dump.rdb替换备份服务器的dump.rdb

3.重启服务。



三:redis_dump方式(第三方工具)

bash> yum install ruby rubygems ruby-devel

bash> gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/

bash> gem install redis-dump -V


备份

bash> redis-dump -u 192.168.10.100:6378 > test.json

还原

bash> < test.json redis-load -u 127.0.0.1:6378








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

如何完成Redis数据迁移?

【Redis】Redis Cluster-集群数据迁移

Redis 技术探索「数据迁移实战」手把手教你如何实现在线 + 离线模式进行迁移 Redis 数据实战指南(scan模式迁移)

Redis 技术探索「数据迁移实战」手把手教你如何实现在线 + 离线模式进行迁移 Redis 数据实战指南(数据检查对比)

redis 版本升级数据迁移使用Redis-Shake

Redis技术探索「数据迁移实战」手把手教你如何实现在线 + 离线模式进行迁移Redis数据实战指南(离线同步数据)