2017-08-09 23:57 LJY2345 评论关闭  87 
  评分 0 次,平均分 0.0

mysql_listen.sh:


 

该脚本实现监测mysql的状态,如果发现mysql停止,则自动启动,并填写停止时间


我认为还有一种更好的方式,不同与原作者

我使用的是wdcp面板使用上面的代码会无法读取到日志,所以就使用了检测pgrep mysqld的方法。

使用 pgrep mysqld 监测mysqld服务的运行状态,其中&> /dev/null 是将其结果输出到空文件,也就是不保存输出信息

$? 是拿到上一条命令的运行结果,-gt 0 是判断是否大于0,后面则是输出时间到日志文件,然后启动mysql,否则不启动mysql

我的测试步骤如下:

出现Permission denied的原因是mysql.sh权限问题,把其设置为0777即可。

日志输出

即每执行一次脚本,输出结果都会被保存到 /var/log/mysql_listen.log 中

同理:我们可以实现nginx的停止自动重启

pgrep mysql &> /dev/null

只需要把mysql改为nginx即可

 

二 使脚本每隔一定的时间自动运行

linux上定期执行脚本用的是cron进程

命令:

 

在最后一行加入:

*/5表示分钟能被5整除,及每5分钟执行一次,后面4个*号,分别表示 小时,日,月,星期。

保存后退出。

重启cron就可以了

这样就会每隔5分钟,执行一次检测mysql的脚本。

原文链接:

http://www.embbnux.com/2014/07/08/shell_listen_mysq_auto_restart/

历史上的今天:

  
 

除特别注明外,本站文章均采用BY-NC-SA协议授权,转载请注明来自:http://www.embbnux.com/2014/07/08/shell_listen_mysq_auto_restart/

博 主作者: 关注:4    粉丝:0最后编辑于:2017年8月12日
LJY IT BLOG的站长。

扫一扫打赏

支付宝扫一扫打赏

微信扫一扫打赏

切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册

扫一扫二维码分享