文章目录
Redis启动找不到pid文件位置?Redis的pid文件在哪里?
Linux怎么查看Redis进程pid文件位置地址?
Linux 查找redis进程命令 ▼
ps -ef | grep redis
返回显示以下查询结果 ▼
redis 28221 1 1 Feb08 ? 00:13:19 /usr/bin/redis-server 127.0.0.1:6379
- 查看redis进程,就是找不到pid文件位置,该怎么办?
redis.pid文件找不到?
Redis 启动脚本应该在启动时创建一个 pid 文件,但我们已经确认了我们能找到的所有设置,并且没有创建任何 pid 文件。
如果Redis 守护进程未创建 PID 文件,怎么办呢?
redis.pid是如何生成的?
对于Linux服务器的 CentOS 7:
Redis 服务器的名称是redis.service
,SSH输入以下命令启动编辑 ▼
systemctl edit redis.service
添加这个 ▼
[Service] ExecStartPost=/bin/sh -c "echo $MAINPID > /var/run/redis/redis.pid" PIDFile=/var/run/redis/redis.pid
重启服务:
systemctl daemon-reload systemctl restart redis monit reload
然后,会在此位置文件地址,生成 Redis的pid文件:/etc/systemd/system/redis.service.d/override.conf
pid文件地址 ▼
cat /var/run/redis/redis.pid
=> 27585
redis.pid文件里有什么?
- redis.pid 文件存储进程的 ID。
- 使用
cat
命令查看,可以看到内容只有一行,记录了进程的ID。
redis.pid文件的作用是什么?
- redis.pid文件的作用,是防止启动进程的多个副本。
- Monit程序监控redis进程,需要使用redis.pid文件位置地址。
pid文件的原理是什么?
- 进程运行后,会为 .pid 文件添加文件锁。
- 只有获得锁的进程才有写权限(F_WRLCK),将自身的pid写入文件。
- 其它试图获取锁的进程将自动退出。
Monit监控添加Redis的pid文件位置地址
在Monit监控程序的配置文件monit.conf
里,添加Redis的pid文件位置地址 ▼
check process redis with pidfile "/var/run/redis/redis.pid" start program "/usr/bin/systemctl start" stop program "/usr/bin/systemctl stop" if failed host 127.0.0.1 port 6379 then restart if 5 restarts within 5 cycles then timeout group redis
Monit监控是一个免费的开源软件,点击下方链接,浏览CWP7安装Monit监控软件教程 ▼
希望陈沩亮博客( https://www.chenweiliang.com/ ) 分享的《Redis找不到pid?Redis启动后如何配置pid文件位置地址》,对您有帮助。
欢迎分享本文链接:https://www.chenweiliang.com/cwl-26494.html
喜欢就分享和按赞!您的分享和按赞,是我们持续的动力!