记一次mariadb数据库无法连接

春季来好快,悄无声息不知不觉中,草儿绿了,枝条发芽了,遍地野花油菜花开灿烂多姿,一切沐浴着春晨曙光,春风中摇弋轻摆,仿佛少女轻歌曼舞,楚楚动人。

自从自己维护blog以后,基本一个月内,都会出现1,2次这种错误,以前解决的办法很简单,就是把虚拟机重启一下就可以。经常是网友在微信,qq,微博提醒我blog挂掉。

刚好国庆期间碰上,就顺便提高一下自己的运维能力,看看具体的原因。

tail /var/log/mariadb/mariadb.log

看到大概的错误

161004 11:21:05 InnoDB: Fatal error: cannot allocate memory for the buffer pool
161004 11:21:05 [ERROR] Plugin 'InnoDB' init function returned error.
161004 11:21:05 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
161004 11:21:15 [Note] Plugin 'FEEDBACK' is disabled.
161004 11:21:16 [ERROR] Unknown/unsupported storage engine: InnoDB
161004 11:21:16 [ERROR] Aborting

其实我也能猜到,肯定是数据库的内存使用有啥问题。

有错误,其实就是利用google,基本就有答案

http://www.webtrafficexchange.com/solved-mysql-crash-fatal-error-cannot-allocate-memory-buffer-pool

我使用的青云的虚拟机,swap分区,就是1G,所以应该也不需要创建。

编辑 /etc/my.cnf,

[mysqld]
innodb_buffer_pool_size=64M

重启mysql

systemctl restart mariadb

查看swap内存使用

# free -m
       total    used    free   shared buff/cache  available
Mem:      993     431     386      6     175     424
Swap:     1023      0    1023

查看一下启动日志

[root@chenshake mariadb]# tail /var/log/mariadb/mariadb.log
161004 20:42:46 InnoDB: Initializing buffer pool, size = 64.0M
161004 20:42:46 InnoDB: Completed initialization of buffer pool
161004 20:42:46 InnoDB: highest supported file format is Barracuda.
161004 20:42:46 InnoDB: Waiting for the background threads to start

密切关注一下后续的效果如何。

到此这篇关于记一次mariadb数据库无法连接就介绍到这了。知道你想要什么,一半在于知道得到它之前必须放弃什么。更多相关记一次mariadb数据库无法连接内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
MariaDB性能调优工具mytop的如何使用详解

centos7下安装mysql(MariaDB)的好代码教程

Window7安装MariaDB数据库及系统初始化操作分析

MariaDB中的threadpool详细介绍和如何使用方法

一篇关于MariaDB安装问题小记(CMakeErrorat)