原创

Mysql无法启动"Cannot allocate memory for the buffer pool"

今天重新发布项目到linux中启动之后过了没多久mysql5.6数据库就挂了无法启动,后来通过查看日志文件mysqld.log,发现mysql日志文件中报错误异常,连接池内存不足,具体错误信息如下:

2015-08-17 13:04:49 1516 [Note] InnoDB: Using atomics to ref count buffer pool pages
2015-08-17 13:04:49 1516 [Note] InnoDB: The InnoDB memory heap is disabled
2015-08-17 13:04:49 1516 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-08-17 13:04:49 1516 [Note] InnoDB: Memory barrier is not used
2015-08-17 13:04:49 1516 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-08-17 13:04:49 1516 [Note] InnoDB: Using Linux native AIO
2015-08-17 13:04:49 1516 [Note] InnoDB: Using CPU crc32 instructions
2015-08-17 13:04:49 1516 [Note] InnoDB: Initializing buffer pool, size = 64.0M
InnoDB: mmap(68681728 bytes) failed; errno 12
2015-08-17 13:04:49 1516 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
2015-08-17 13:04:49 1516 [ERROR] Plugin 'InnoDB' init function returned error.
2015-08-17 13:04:49 1516 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2015-08-17 13:04:49 1516 [ERROR] Unknown/unsupported storage engine: InnoDB
2015-08-17 13:04:49 1516 [ERROR] Aborting

问题分析:

检查内存剩余情况,发现内存不足导致。

具体如何查看内存情况参考地址:http://blog.yoodb.com/yoodb/article/detail/1009

本人的内存使用情况,执行命令free -m,具体如下:

[root@iZ256w2hluuZ log]# free -m
     total       used       free     shared    buffers     cached
Mem:   994813180  0  9 54
-/+ buffers/cache:750244
Swap:    0  0  0

解决方法:

打开my.cnf mysql配置文件,如果不知道文件地址,使用命令如下:

[root@iZ256w2hluuZ log]# find / -name my.cnf
/usr/my.cnf
/etc/my.cnf

执行vim /etc/my.cnf命令,将innodb_buffer_pool_size参数值调小即可。

innodb_buffer_pool_size = 64M
max_connections = 200
wait_timeout = 1440

重启mysql数据库,命令如下:

service mysqld restart 或 service mysql restart

注意:mysql安装时一般innodb_buffer_pool_size参数默认64mb或128mb,修改重启就可以了。

~阅读全文-人机检测~

微信公众号“Java精选”(w_z90110),专注Java技术干货分享!让你从此路人变大神!回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。微信搜索小程序“Java精选面试题”,内涵3000+道Java面试题!

涵盖:互联网那些事、算法与数据结构、SpringMVC、Spring boot、Spring Cloud、ElasticSearch、Linux、Mysql、Oracle等

评论

分享:

支付宝

微信