程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> Mariadb數據庫 >> 記一次mariadb數據庫無法連接

記一次mariadb數據庫無法連接

編輯: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

密切關注一下後續的效果如何。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved