Redis集群启动问题

Redis集群启动问题

1、问题描述

[ERR] Node 192.168.43.175:7001 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

2、问题分析

这是由于redis集群在关闭的时候是非正常关闭,也就是俗称的宕机。redis服务器没来得及保存相关数据导致信息丢失。所以需要删除在本地的备份文件,重新启动服务器。

3、问题解决

由于要删除数据,这里直接简单粗暴的将redis进程杀死即可。首先通过ps -ef | grep redis命令获取redis进程的基本信息。然后直接将进程kill,注意:这里kill的是cluster进程。再次运行ps -ef | grep redis命令,验证进程已经被强制终止。按照这个方法,依次将集群中其他redis服务器中止。

在这里插入图片描述

然后进入redis服务器本地文件所在目录,笔者的目录为/var/redis。我们选择进入一个服务器目录,如7001,我们发现里面有nodes.conf等文件,我们需要将这些文件全部删除。运行rm -rf *,再次查看该文件夹,发现我们的文件已经被删除。按照这个方法依次将集群中的文件全部删除即可。

在这里插入图片描述

然后依次启动服务器。运行./redis_7001 start。出现/var/run/redis_7001.pid exists, process is already running or crashed问题。需要将其删除。运行rm -rf /var/run/redis_7001.pid。再次启动服务器。服务器可以正常启动了。

在这里插入图片描述

最后再次运行集群启动命令/usr/local/bin/redis-trib.rb create --replicas 1 192.168.43.175:7001 192.168.43.175:7002 192.168.43.176:7003 192.168.43.176:7004 192.168.43.177:7005 192.168.43.177:7006。即可成功启动整个集群。

在这里插入图片描述

4、总结

如果不是异常或其他特殊情况,一定要正常关闭redis集群,这样再次启动会避免很多麻烦。可能写的有点啰嗦。但是要是以前有博主可以一步一步的写出来,我也不至于花很长时间调试了,不说了,都是泪。继续搬砖了。

点个赞再走呗!欢迎留言哦!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值