/var/run/redis/redis.pid存在,进程已在运行或崩溃

时间:2015-08-24 08:06:26

标签: redis crash

雷迪斯对我很反感。

user@mycomputer:~$ redis-cli

Could not connect to Redis at 127.0.0.1:6379: Connection refused

我尝试通过执行此操作重新启动服务

sudo /etc/init.d/redis_6379 stop

/var/run/redis/redis.pid exists, process is already running or crashed

但没有运气。日志也没有显示错误。

4 个答案:

答案 0 :(得分:5)

通过备份我位于

的redis.rdp文件来解决问题
  

的/ var / lib中/ redis的

检查你的配置文件" /etc/redis/redis.conf"对于rdp文件的位置并执行此操作

sudo mv /var/lib/redis/redis.rdp /var/lib/redis/redis_backup.rdp

然后重新创建redis.rdp文件

sudo touch redis.rdp

使用conf运行redis-server,它应该可以正常工作

 sudo redis-server /etc/redis/redis.conf

答案 1 :(得分:4)

以一种整洁的方式修复它:按照回答中的建议重新创建redis.rdp文件,将清除目前为止记录的所有缓存,redis将在没有缓存的情况下重新启动数据。

这是一条警告消息,用于通知系统崩溃/不正确关闭:" /var/run/redis/redis.pid存在,进程已在运行或崩溃"

  

只需删除/var/run/redis/redis.pid文件重新启动服务器

注意:您可能因为不整齐的关机而丢失了最新的缓存更改,这些更改未刷新到磁盘中。使用redis conf文件中的频繁磁盘刷新配置可以最大限度地减少数据丢失(在我的例子中是@ / etc / redis / 6379.conf)

save 900 1
save 300 10
save 60 10000
Or try AOF persistence, more details [here][1]

答案 2 :(得分:1)

使用config运行redis-server。

sudo redis-server redis.conf

答案 3 :(得分:0)

取决于您如何安装redis,可以在/var/run/redis_6379.pid上找到pid。

发生的事情是redis崩溃了,但是pid仍然存在。因此,您只需要删除它即可。

sudo rm -f /var/run/redis_6379.pid

然后再次开始Redis:

sudo /etc/init.d/redis_6379 start

如果找不到它,建议“更正确”安装redis。遵循Installing Redis more properly部分中的redis快速入门指南。

https://redis.io/topics/quickstart