简体中文简体中文
英文英文
简体中文简体中文

WordPress宝塔面板Mysql数据库经常停止解决办法分享

2024-07-09 16:44:06

我们使用宝塔面板搭建网站时,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
 
WordPress宝塔面板Mysql数据库经常停止解决办法分享
当然你也可以增加内存或者Linux系统的swap虚拟内存,直接增加服务器配置增加内存是最简单粗暴的! 最终上述脚本整合为:
pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/mysqld start 
fi