这两周在看《Redis入门指南(第二版)》这本书,本着实践出真知的态度,按照书上的教程搭建了一套Redis集群。搭建的过程中碰到了一些报错,在此记录一下备忘。
1.执行 redis-trib.rb create 命令时报错:
[ERR] Node 172.17.0.2:6379 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0
报错提示很友好,两种情况:
1.节点数据不为空
2.节点可能已经关联了其他的节点
直接上处理方式:
1.执行flushall命令清空数据
2.删除与其他节点的关联。可以通过redis.conf中的cluster-config-file属性找到该文件然后删掉,默认是nodes.conf,不知道自己安装目录就find一下
2.redis-trib.rb分配节点选择yes后,报错:
ERR Slot 1321 is already busy (Redis::CommandError)
这个报错的意思是某个槽正在使用中。所以我们需要给每个节点执行一下重置命令 CLUSTER RESET。执行之后再重新创建集群,成功。