redis相关操作命令适合5.0及以后版本
1.在创建redis集群的时候不要手动创建主从节点的关系,而是在创建集群的时候,随机指定的,另外,如果节点有密码,则配置文件中的 masterauth,和 requirepass 都要设置,尽量设置成一样。不然可能会出现从节点连不上主节点的情况
创建集群的命令,首先在创建集群前要把所有的节点都启动起来
进入一个节点 下面的命令是创建三主三从的集群的命令 参数 --cluster-replicas 1 表示每一个主节点对应一个从节点 的关系
./src/redis-cli --cluster create 127.0.0.1:5001 127.0.0.1:5002 127.0.0.1:5003 127.0.0.1:5004 127.0.0.1:5005 127.0.0.1:5006 --cluster-replicas 1 -a password
2.检查集群状态
进入一个主节点安装目录
./src/redis-cli --cluster check 127.0.0.1:5001 -a password
3.在不同的主节点之间移动slots
./src/redis-cli --cluster reshard 127.0.0.1:5001 --cluster-from c86fef43b306a6085e90a5e3add714607a130b67 --cluster-to 2149b38b0ba5285d2fd2745562c18808d0adeb8f --cluster-slots 5461 --cluster-yes -a password
--cluster-from 和 --cluster-to 后面跟的不同的主节点的节点标识 ,节点标识可以用检查集群状态的命令查看
需要注意的是命令中的5461是要移动的slots的数量,被移动的节点的slots的数量不能少于这个要移动的数量。
4.把单机的redis的数据迁移到新建集群的办法、步骤。
一:登录单机redis 并shutdown 然后找到 dump.rdb这是数据文件
二: 登录集群 选择一个主节点,并把其他主节点的slots都移动到这个主节点上 这一步是关键
三:登录集群中的有全部slots的主节点,即第二步骤中选中的主节点 shutdown 这个主节点,然后找到这个主节点的dump.rdb删除。用第一步中的dump.rdb来替换,并重启。这样,集群中这个主节点就有了迁移过来的数据。
四:与第二步的操作是相关的,把有全部slots的主节点上的slots均匀分迁移到其他的主节点上就可以了。
5.集群状态下批量删除指定的key数据
进入一个要删除的主节点目录,用下面的命令可以删除以key为前缀的数据,需要注意要进不同的主节点分别删除。
./src/redis-cli -h 127.0.0.1 -p 5001 -a password keys "key*" | xargs -r -t -n1 ./src/redis-cli -h 127.0.0.1 -p 5001 -a password del
本文地址:https://blog.csdn.net/tianshuhao/article/details/107181584