新建shell定时任务,设置为每1分钟执行一次.
#!/bin/bash
# 宝塔MySQL数据库状态检查脚本
# 定义MySQL进程名
MYSQL_PROCESS_NAME="mysqld"
# 检查MySQL进程是否存在
MYSQL_PROCESS=$(ps -ef | grep $MYSQL_PROCESS_NAME | grep -v grep | wc -l)
if [ $MYSQL_PROCESS -eq 0 ]; then
# 如果MySQL进程不存在,则启动MySQL
echo "MySQL is not running, starting MySQL..."
/etc/init.d/mysqld start
else
# 如果MySQL进程存在,则检查MySQL是否正常运行
MYSQL_STATUS=$(mysqladmin ping 2>/dev/null | grep "alive" | wc -l)
if [ $MYSQL_STATUS -eq 0 ]; then
# 如果MySQL不正常运行,则重启MySQL
echo "MySQL is not responding, restarting MySQL..."
/etc/init.d/mysqld restart
else
# 如果MySQL正常运行,则输出正常信息
echo "MySQL is running."
fi
fi
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容