经验分享 · 2023年3月7日

Linux宝塔面板下Linux经常莫名其妙停止的应对办法

服务器Ubuntu20.04,4核8G内存,宝塔 7.9.8版本,安装Mysql 5.7.40,无规律挂起,登录宝塔后台发现Mysql是停止状态,从网上找了多种方法,比如增加swap等,不解决问题。想起两年前我用的宝塔旧版也存在这种问题。最后只能用计划任务方式定时监控宝塔进程,10分钟测试一次,mysqld进程不存在自动重启。

附上相关资料供参考:

1、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
最后效果如下:

 

 

2、Nginx监控
宝塔面板—>计划任务,输入任务名称、执行周期、脚本内容

脚本内容如下:

pgrep -x nginx &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/nginx start
echo “监控到Nginx已停止,已执行重启计划,时间: date "+%Y-%m-%d %H:%M:%S" ” >> /www/Nginx_jiankong.log
fi
3、PHP监控
宝塔面板—>计划任务,输入任务名称、执行周期、脚本内容

脚本内容如下:

注意:下面第3行代码中的52~73是指php版本5.2 7.3

pgrep -x php-fpm &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/php-fpm-{52|53|54|55|56|70|71|73} restart
echo “监控到php已停止,已执行重启计划,时间: date "+%Y-%m-%d %H:%M:%S" ” >> /www/php_jiankong.log
fi
4、redis监控
脚本内容如下:

pgrep -x redis &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/redis start
fi

5、memcached监控
脚本内容如下:

pgrep -x memcached &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/memcached restart
fi
最后
一般我们只需要添加MySQL和Nginx监控,其他的不需要添加,我只加了前面2个,添加了以后记得测试一下任务是否有效,去宝塔停止MySQL、Nginx,然后执行一下这个任务,看看MySQL和Nginx状态是否开启。
————————————————
版权声明:本文为CSDN博主「龙飞瘦了」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/t1174148618/article/details/127299153