关于Redis的cluster集群删除节点后再次添加节点

在cluster不小心删除某个节点后再加入节点是个很麻烦的事(删除之前先把cluster分配的hashslot给重新分配一下很重要

通过 redis-trib.rb del-node 你的节点地址 bd5a40a6ddccbd46a0f4a2208eb25d2453c2a8db(你的node ID(可以通过 redis-trib.rb check 查看))删除你的节点。

删除完后要是想重新添加回去时发现用 redis-trib.rb add-node 你的节点地址 需要挂载的集群的节点 添加时会报错,

[ERR] Node 192.168.XX.XX:XXXX is not empty. Either the nodealready knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

出现这个的原因是这个节点之前已经加入过这个集群了,再次加入就会爆出这样的错误,你可以区配置节点的xxxx.conf文件里找到你保存的cluster-config-fil节点信息,找到然后删除掉,然后删除掉该节点的数据保存RDB文件(要是开启的AOF)也需一并删除掉

然后运行  redis-trib.rb add-node 命令,看是否可以加入集群。成功的话就不用往下看了



要是还是不行就得去连接到你的Redis redis-cli -h 192.168.XXX.XXX -p xxxx (你节点的地址个端口号)去flushdb一下,清空数据库,再次add-node应该就可以了。添加节点后记得给他分配hashslot(记得)


你可能感兴趣的:(Redis)