服务器上的MySql用了几个月,今天突然无法连接。在数据目录下找到.err文件,看到里面最后的出错信息为:
140605 9:37:39 InnoDB: Fatal error: cannot allocate memory for the buffer pool
140605 9:37:39 [ERROR] Plugin 'InnoDB' init function returned error.
140605 9:37:39 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140605 9:37:39 [ERROR] Unknown/unsupported storage engine: InnoDB
140605 9:37:39 [ERROR] Aborting
于是打开/etc/my.cnf文件,看到里面innodb_buffer_pool_size配置项写的是12G,估计是这里设得太大了,服务器内存占用一高,就无法分配那么多空闲内存给MySql了。于是将12G改为10G,再尝试启动MySql,果然可以正常启动了。