MariaDB出现’Fatal error: cannot allocate memory for the buffer pool’错误的解决办法

By | November 25, 2016

今早网站的数据库连接失败,登录服务器发现mysqld进程已经退出,查看日志,出现了如下的内容:

于是,第一时间修改数据库服务器配置文件,修改(没有则添加):innodb_buffer_pool_size=256M (原来为128M),保存文件,启动Mysqld进程,仍然启动不了。
top一下,发现apache占用的内存过多。原来是系统内存不够用。停掉httpd进程,然后再次尝试启动mysqld,这时顺利启动。于此就应该去限制apache的进程/线程数量,这要修改的是MPM模式的配置内容,以小内存的服务器为例(按实际情况调节),假设用的是Event模式,在htttpd.conf文件中修改后的内容如下:

修改完成启动Apache,启动成功。至于Apache的内存占用情况还须观察一下。


© 2016 – 2018, Navin. All rights reserved.

鉴于本人的相关知识储备以及能力有限,本博客的观点或者描述如有错漏或是有考虑不周到的地方还请多多包涵,也欢迎指正,一起学习,共同进步。