重启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