【发布时间】:2016-01-06 05:04:37
【问题描述】:
一些背景。我在 VPS 中托管了一个 WordPress 站点,有时 MYSQL 出现错误“建立数据库连接时出错”。我花了一些时间研究并认为问题是由于 MySQL 重新启动时,它无法分配足够的 RAM 来继续。
我相信我可以通过增加物理 RAM 或交换来改善这种情况。但我对这篇文章的问题是,为什么 MySQL 需要自行重启?我的网站流量非常低,数据库似乎没有损坏。
以下是此问题的完整日志:
- 160103 18:39:54 mysqld_safe 现在运行的进程数:0
- 160103 18:39:54 mysqld_safe mysqld 重启
- 160103 18:39:55 [注意] /usr/libexec/mysqld (mysqld 5.5.44-MariaDB) 从进程 22061 开始 ...
- 160103 18:39:55 InnoDB:InnoDB 内存堆已禁用
- 160103 18:39:55 InnoDB:互斥锁和 rw_locks 使用 GCC 原子内置函数
- 160103 18:39:55 InnoDB:压缩表使用 zlib 1.2.7
- 160103 18:39:55 InnoDB:使用 Linux 原生 AIO
- 160103 18:39:55 InnoDB:初始化缓冲池,大小=128.0M
- InnoDB:mmap(137756672 字节)失败;错误号 12
- 160103 18:39:55 InnoDB:缓冲池初始化完成
- 160103 18:39:55 InnoDB:致命错误:无法为缓冲池分配内存
- 160103 18:39:56 [错误] 插件“InnoDB”初始化函数返回错误。
- 160103 18:39:56 [错误] 插件“InnoDB”注册为存储引擎失败。
- 160103 18:39:56 [错误] mysqld:内存不足(需要 128917504 字节)
- 160103 18:39:56 [错误] mysqld:内存不足(需要 96681984 字节)
- 160103 18:39:56 [错误] mysqld:内存不足(需要 72499200 字节)
- 160103 18:39:56 [注意] 插件“反馈”已禁用。
- 160103 18:39:56 [错误] 未知/不支持的存储引擎:InnoDB
- 160103 18:39:56 [错误] 中止
【问题讨论】: