如果 mysql 由于某种原因停止,如何自动启动?

如果 mysql 由于某种原因停止,如何自动启动?

我有一个 digitalocean ubuntu vps 仅用于开发,但有时 mysql 服务器会停止工作。根据我的调查,我没有足够的内存来处理一些 laravel 安装。由于我仅将服务器用于开发目的,所以我不想升级服务器。所以现在我必须在 mysql 停止工作时启动它。

一旦停止工作,有没有什么方法可以自动启动 mysql?

答案1

通常用于此目的的工具是监控

Digital Ocean 拥有教程关于它,其中还包括一个关于如何保持 MySQL 运行的示例。简短的概要如下:

  1. 安装 monit

    sudo apt-get install monit
    
  2. 编辑配置文件:

    sudo nano /etc/monit/monitrc
    

    并在其中包含以下内容:

    check process mysqld with pidfile /var/run/mysqld/mysqld.pid
        start program = "/etc/init.d/mysql start"
        stop program = "/etc/init.d/mysql stop"
    
  3. 重新加载新配置:

    monit reload
    

我强烈建议你查看 MySQL 错误日志,了解它停止的原因(在正常运行中它不应该这样做)。运行mysql修复检查所有表的状态,因为您可能遇到一些严重的数据库损坏。

答案2

如果 mysql 停止工作,您需要调查原因。它没有理由这样做。确保您有足够的内存并分配了交换空间。

相关内容