宝塔面板自动检测状态且自动重启PHP、Redis、MySQL、Nginx

重启PHP、Redis、MySQL、Nginx等服务。服务器在运行过程中,常常会遇到一些问题,导致服务异常停止。如果我们没有及时发现,可能会造成较大的损失。因此,建议为重要服务启用定时重启功能,这样即使出现问题而未被及时发现,服务也能按时自动恢复。同时,如果检测到服务停止,也可以自动启动。

一、添加方法

登录宝塔面板管理后台,点击计划任务,任务类型选择shell脚本,时间自己选择,脚本内容填写重启代码即可。

二、定时检测任务

使用宝塔面板定时任务执行下方代码即可实现定时检测,如有停止的可自动启动服务。

PHP监控守护:

#!/bin/bash

# Linux监控PHP服务,关闭就自动重启

pgrep -x php-fpm &> /dev/null

if [ $? -ne 0 ];then

/etc/init.d/php-fpm-56 restart

echo “监控到php56已停止,已执行重启计划,时间: `date “+%Y-%m-%d %H:%M:%S”` ” >> /www/php_jiankong.log

fi

redis监控守护:

#!/bin/bash

# Linux监控redis服务,关闭就自动重启

pgrep -x redis &> /dev/null

if [ $? -ne 0 ];then

/etc/init.d/redis start

fi

MySQL监控守护:

#!/bin/bash

# Linux监控MySQL服务,关闭就自动重启

pgrep -x mysqld &> /dev/null

if [ $? -ne 0 ];then

bash /www/server/panel/script/rememory.sh

/etc/init.d/mysqld start

echo “监控到MySQL已停止,已执行重启计划,时间: `date “+%Y-%m-%d %H:%M:%S”` ” >> /www/mysql_jiankong.log

fi

Nginx监控守护:

#!/bin/bash

# Linux监控Nginx服务,关闭就自动重启

nginx_procnum=`ps -ef|grep “nginx”|grep -v grep|wc -l`

if [ $nginx_procnum -eq 0 ]

then

echo $(date) “Success,Nginx重启成功!” >> /var/log/nginxmonitor.log

/etc/init.d/nginx start

else

sleep 5

echo “Nginx正常运行中…”

fi

 

未经允许不得转载:云主机笔记 » 宝塔面板自动检测状态且自动重启PHP、Redis、MySQL、Nginx