redis系列——redis跨机器复制指定key(二)
猛波波 2019-12-12 11:14:19 122 收藏
展开
前言:拷贝redis数据,首先想到可以把redis的dump.rdb快照文件拷贝到新redis的数据目录启动就好,但这样是把全部数据都拷贝了过去,并且如果被拷贝的redis里面本身有数据的话,会被覆盖掉,所以这种方法只适合做数据的整体迁移。
但有时候需要把redis内的部分key写到不同机器上不同集群的redis内,这时候就有了这个方法。
新建脚本:movekey.sh
#!/bin/bash
#redis
src_ip=192.168.1.129
#redis
src_port=6379
#redis
src_db=0
#redis
src_pw=123
#redis
dest_ip=192.168.1.128
#redis
dest_port=6379
#redis
dest_db=0
#redis
dest_pw=123
redis-cli -h $src_ip -p $src_port -a $src_pw -n $src_db keys "day:*" | while read key
do
redis-cli -h $src_ip -p $src_port -a $src_pw -n $src_db --raw dump $key | head -c-1 | redis-cli -h $dest_ip -p $dest_port -a $dest_pw -n $dest_db -x restore $key 0
echo "migrate key $key"
done
以上作用就是把192.168.1.129上的所有day:*的key复制到192.168.1.128。
————————————————
版权声明:本文为CSDN博主「猛波波」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40384985/article/details/103505563