17713433920 info@mac163.com

我们使用宝塔面板搭建网站时,Mysql数据库有时会意外停止,这时候我们只能登录服务器进行手动重启Mysql。那么怎么设置监控Mysql的运行情况,当数据库进程停止时,自动重启Mysql数据库呢?其实我们可以通过添加计划任务(Shell脚本)的方式来实现。具体操作方法如下:

登陆宝塔面板后台 – 计划任务。任务类型:Shell脚本 任务名称:Mysql进程守护 执行周期:比如每1分钟监控执行一次,具体的周期请根据自己服务器实际情况来设置。脚本内容:

脚本一

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
bash /www/server/panel/script/rememory.sh
/etc/init.d/mysqld start
fi
echo "----------------------------------------------------------------------------"
endDate=`date +"%Y-%m-%d %H:%M:%S"`
echo "★[$endDate] Successful"
echo "----------------------------------------------------------------------------"

脚本二

pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
bash /www/server/panel/script/rememory.sh
/etc/init.d/mysqld start
fi

如果只是普通的意外停止,可以手动重启Mysql成功的话
这个脚本是可以进行mysql守护的
需要注意的是,这个脚本带有释放内存的脚本 会重载php/nginx等
如有需要可以自行删除释放内存的代码
以下此行就是

bash /www/server/panel/script/rememory.sh
宝塔面板mysql数据库经常停止解决办法分享
宝塔面板mysql数据库经常停止解决办法分享

当然你也可以增加内存或者Linux系统的swap虚拟内存,直接增加服务器配置增加内存是最简单粗暴的!

最终上述脚本整合为:

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

微信二维码

微信扫描二维码联系我们!
我们在微信上24小时期待你的声音
提供外贸路由器设备产品,轻松翻墙,解答:WP主题推荐,WP网站建设,Google SEO,百度SEO,专业服务器环境搭建等!


需要提供WordPress主题/插件的汉化服务可以随时联系我们!另外成品WordPress网站以及半成品WordPress网站建设,海外Google SEO优化托管服务,百度SEO优化托管服务,Centos/Debian服务器WP专用环境搭建,WP缓存服务器搭建,我们都是你的首选,拥有多年WP开源程序服务经验,我们一直在坚持客户体验,没有最好,只有更好!
回到顶部