因為工作原因,需要用到redis遷移工具,這里記錄下防止后面再用到。
環境:centos7.2 X64_64
編譯步驟:
yum install autoconf automake libtool bzip2 ### 原生唯品會出的rmt版本比較老,不支持redis4.X。這里我們下載這里別人修改版的,支持redis4.X的遷移 git clone https://github.com/tanruixing88/redis-migrate-tool.git cd redis-migrate-tool autoreconf -fvi ./configure make src/redis-migrate-tool -h
rmt.conf 內容如下 (從一個redis遷移到另一個redis節點):
[source] type: single servers: - 127.0.0.1:6379 [target] type: single servers: - 127.0.0.1:6381 [common] listen: 0.0.0.0:9999
max_clients: 100
threads: 4
遷移命令:
/root/redis-migrate-tool/src/redis-migrate-tool -c rmt.conf -o log -d
這個進程會在后台一直運行,等數據追平后,讓業務方在低峰期將老的redis庫停止寫入,將連接方式改到這個新庫上即可(建議redis主從用sentinel來做高可用)。 確認沒問題后,然后由DBA kill 掉 redis-migrate-tool進程,整個redis遷移全過程結束。
其它的遷移方法可以參考:
https://github.com/tanruixing88/redis-migrate-tool/tree/master 或者 https://www.cnblogs.com/EikiXu/p/9626311.html
