使用服务 mysql 状态 > /dev/null 命令未找到重新启动 MySql Server

使用服务 mysql 状态 > /dev/null 命令未找到重新启动 MySql Server

Mysql 服务器会在几天或几周内宕机,但通常是在晚上。我尝试搜索这个论坛并找到了这个命令

*/5 * * * * service mysql status > /dev/null || service mysql start

每五分钟检查一次状态,如果不工作,它会尝试重新启动,但我收到电子邮件说未找到如下命令

/bin/sh: service: command not found

我在用着

  • CentOs7
  • 7 号

还有一件事是,当 MySql 关闭时,我不需要重新启动它,我只需要登录到管理面板,它首先显示错误,然后刷新后一切都正常,即使 MySql 重新启动。

在 CWP7 中添加了 Cron 命令

答案1

cron默认情况下没有用户(特别是根)PATH 环境。

尝试给出完整路径

*/5 * * * * /usr/sbin/service mysql status > /dev/null || /usr/sbin/service mysql start

如果这不起作用(CentOS 7 使用 systemd),请尝试替换service/bin/systemctl

*/5 * * * * /bin/systemctl status mysql > /dev/null || /bin/systemctl start mysql

请注意,systemctl先执行命令,然后再执行服务。

https://www.thegeekdiary.com/centos-rhel-7-beginners-guide-to-systemd-service-units/

在 RHEL 的早期版本中,服务实用程序用于停止和启动服务。在 RHEL 7 中,systemctl 实用程序提供了一组等效的子命令。

一些发行版(例如 Ubuntu)提供了方便的脚本,可以在后台service执行命令 - 不确定 CentOS 7 是否提供了该实用程序。systemctl

相关内容