有的同学,在搭建Redis的集群的时候,搭建出了错误,比如配置文件错了,想修改后,再创建集群,遇到节点不为空的情况,需要删除redis每个节点的集群配置文件和aof和rdb文件,然后才可以重新创建集群。
[ERR] Node 172.17.97.2:7002 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in da tabase 0.
删除redis数据存储文件
我们需要将每个节点下面的,aof和 rdb是存储文件,都删除叼,还有节点配置信息,nodes-xx.conf都删除掉
#直接杀死所有进程(直接暴力)
kill -9 $(pidof redis-server)
#停止所有节点(这个关闭也行,不暴力)
redis-cli -h 172.17.97.2 -p 7001 shutdown
redis-cli -h 172.17.97.2 -p 7002 shutdown
redis-cli -h 172.17.97.2 -p 7003 shutdown
redis-cli -h 172.17.97.2 -p 7004 shutdown
redis-cli -h 172.17.97.2 -p 7005 shutdown
redis-cli -h 172.17.97.2 -p 7006 shutdown
#删除节点下面的所有相关文件(这个是批量删除的操作)
rm -f ./*/nodes-*.conf ./*/appendonly.aof ./*/dump.rdb
删除后的节点
创建集群
#开启服务(ps:最好写一个脚本启动,比较的方便)
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7001/redis.conf
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7002/redis.conf
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7003/redis.conf
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7004/redis.conf
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7005/redis.conf
redis-server /usr/local/redis/redis-4.0.2/redis_cluster/7006/redis.conf
#创建集群(三主三从)
redis-trib.rb create --replicas 1 172.17.97.2:7001 172.17.97.2:7002 172.17.97.2:7003 172.17.97.2:7004 172.17.97.2:7005 172.17.97.2:7006
连接测试一下
#连接redis , -h是ip, -p是端口,-c表示服务器集群连接
redis-cli -h 172.17.97.2 -p 7001 -c
#集群信息
cluster info
#节点信息
cluster nodes