一台2G内存的vps服务器,因为同时反向代理了几个网站,和安装了一个wordpress网站,经常因为内存突发爆满问题导致mysql服务器停止服务,好几次wordepress就访问不了,查询相关资料目前使用以下解决方案
注:当然最好的方案就是换更大内存的vps服务器,1G,2G有时候安装wordpress访问量一高很容易爆内存。
目前使用解决方案,宝塔面板-计划任务-监控mysql-如果检测发现mysql停止服务-重启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监控,PHP监控
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
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
本文出处:

发表回复