如何解决MySQL中的崩溃问题

来自菜鸟教程
跳转至:导航、​搜索

MySQL崩溃的最常见原因是由于内存不足而停止或无法启动。 要检查这一点,您需要在崩溃后查看 MySQL 错误日志。

首先,尝试通过键入以下命令启动 MySQL 服务器:

sudo systemctl start mysql

然后查看错误日志以查看导致 MySQL 崩溃的原因。 您可以使用 less 来查看您的日志,一次一页:

sudo less /var/log/mysql/error.log

一些表明内存不足的常见消息是 Out of memorymmap can't allocate

内存不足的潜在解决方案是:

  • 优化你的 MySQL 配置。 一个很棒的开源工具是 MySQLtuner。 运行 MySQLtuner 脚本将向您的 MySQL 配置文件 (mysqld.cnf) 输出一组建议的调整。 请注意,您的服务器在使用 MySQLTuner 之前运行的时间越长,它的建议就越准确。 要获得当前设置和 MySQLTimer 建议的内存使用估计,请使用此 MySQL Calculator
  • 减少您的 Web 应用程序对 MySQL 页面加载的依赖。 这通常可以通过向您的应用程序添加静态缓存来完成。 这方面的示例包括 Joomla,它具有缓存作为可以启用的内置功能,以及 WP Super Cache,一个添加此类功能的 WordPress 插件。
  • 升级到更大的VPS。 对于任何使用 MySQL 数据库的服务器,我们建议至少具有至少 1GB RAM 的服务器,但数据的大小和类型会显着影响内存需求。

请注意,即使升级您的服务器是一种潜在的解决方案,但仅在您调查并权衡所有其他选项之后才建议您这样做。 具有更多资源的升级服务器同样会花费更多的钱,因此只有在它确实最终成为您的最佳选择时,您才应该调整大小。 另请注意,MySQL 文档包括 一些其他建议 用于诊断和防止崩溃。