微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

记一次mariadb数据库无法连接

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

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

tail /var/log/mariadb/mariadb.log

看到大概的错误

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,基本就有答案

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

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

编辑 /etc/my.cnf,

rush:plain;"> [MysqLd] innodb_buffer_pool_size=64M

重启MysqL

systemctl restart mariadb

查看swap内存使用

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

查看一下启动日志

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐