• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > Linux 定时检测 MySQL 数据库是否宕机并自动重启

Linux 定时检测 MySQL 数据库是否宕机并自动重启

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了Linux,定时检测,MySQL 数据库,宕机并自动重启等相关知识,希望对您有所帮助

我们建站初期都会选择一台小内存的 VPS 服务器,这样降低建站初期的成本,再说初期访问量很小没有必要使用高配服务器,但是使用过程中不知道是不是内存不够的原因,MySQL 数据库服务总是会自动停止,就是说数据库都宕机了。那么有没有什么办法在 Linux 上定时检测 MySQL 服务是否宕机,并自动重启服务 Linux 上定时检测 MySQL 服务是否宕机,并自动重启服务呢?本文分享个基于 Shell 脚本和 crontab 命令的定时检测 MySQL 服务是否宕机,并自动重启服务的方案,如果你也遇到了这种问题,可是尝试用这种解决办法。

一、检测 MySQL 服务脚本

MySQL 自动重启的 Shell 脚本非常简单,整个逻辑就是检测是否有 MySQL 的进程,如果没有就重启并记录到日志文件中:

pgrep mysqld &> /dev/nullif [ $? -gt 0 ]thenlnmp restartecho "MySQL stopped at time: `date` " >> /root/log/mysql_listen.logfi

二、定时任务

定时检测的功能就是通过 crontab 实现的,具体的介绍可以参考:《Linux 利用 crontab 实现定时任务格式与用法简介》

例如我这里设置的是每 5 分钟检查一次 MySQL 服务:

*/5 * * * * /root/mysql.sh > /dev/null 2>&1 &

三、更多脚本

除了检测 MySQL 服务外,相应的还可以检测 PHP 服务、Nginx 服务等,在脚本上略微改动下就好了:

pgrep mysqld &> /dev/nullif [ $? -gt 0 ]thenlnmp restartecho "MySQL stopped at time: `date` " >> /root/log/mysql_listen.logfi pgrep nginx &> /dev/nullif [ $? -gt 0 ]thenlnmp restartecho "Nginx stopped at time: `date` " >> /root/log/mysql_listen.logfi pgrep php-fpm &> /dev/nullif [ $? -gt 0 ]thenlnmp restartecho "Php stopped at time: `date` " >> /root/log/mysql_listen.logfi

这样再也不要担心数据库莫名其妙宕机了,使用上述代码 Linux 会定时检测 MySQL 数据库服务是否宕机,如果出现数据库宕机则自动重启数据库服务。



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Linux下使用NTFS文件系统(Linux挂载NTFS数据盘)
  • Linux服务器快速卸载安装node环境(简单上手)
  • 宝塔Linux面板之修改MySQL默认保存位置
  • 解决linux下mysql启动失败的问题
  • 如何解决SSH连接Linux超时问题
  • 宝塔linux面板之​一键安装ffmpeg命令
  • Linux下查看PHP配置文件php.ini的位置
  • Linux怎么查看程序是否在运行状态
  • 宝塔linux管理助手安装完后显示IP为内网IP怎么办
  • Linux 定时检测 MySQL 数据库是否宕机并自动重启

相关文章

  • 2022-04-29PS打造简单的小人国微小影像世界创意合成教程
  • 2022-04-29由JS实现的织梦cms版3D球面标签云 效果与flash版的
  • 2022-04-29ThinkPHP如何使用migrate实现数据库迁移
  • 2022-04-29苹果CMSv10批量删除视频数据方法
  • 2022-04-29javascript怎么判断是否为null
  • 2022-04-29ThinkPHP5通过ajax插入图片并实时显示(完整代码)
  • 2022-04-29如何将JS对象与jQuery对象进行相互转换
  • 2022-04-29网站成立初期创造访问量的技巧
  • 2022-04-29JS如何实现数组数据的上移下移
  • 2022-04-29网站上线前需要做的优化准备工作

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Workerman中你不得不知道的属性reusePort
    • 如何解决php json_encode乱码的问题
    • 详解thinkphp ajaxfileupload异步上传图片
    • Photoshop技巧教程:解读13条PS高级使用技巧
    • PhotoShop制作沙漠里的3D立体残破钢筋文字教程
    • PhotoShop制作蓝色梦幻动漫签名溶图教程
    • 一文讲解Vue中路由切换终止异步请求(附代码)
    • 如何撰写良好的描述标签 description tag?
    • JavaScript的math方法有哪些
    • Linux下查看PHP配置文件php.ini的位置

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有