CentOS7 shell自动检测mysql状态

我的VPS centos7 mysql服务经常性的崩溃,在网上搜了用shell自动检测服务状态,如果停止了就启动,用了下面的shell代码,

!/bin/bash

pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ]
then
service mysqld start
fi

手动执行这个文件是没有问题的,mysql会启动,但是用cron不行,高手看下是哪一步出错了?

图片描述

我测试了crontab没有问题,shell会执行,但是无法启动mysql,收到的通知貌似是 command service不存在,这是什么原因?

阅读 4.2k
2 个回答

修改下crontab,打下日志看看:

*/1 * * * * /root/mysql_listen.sh &>/tmp/tmp.log

service mysqld start改成

/etc/init.d/mysqld start

试试

service命令写绝对路径,你上面不是说找不到命令吗。centos 7怎么不用systemd

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题