MySQLが落ちる件の対応
いろいろと調べまくり、エラーログのこの部分を対応しました。
[ERROR] InnoDB: mmap(137232384 bytes) failed; errno 12
調べると、同様な感じで落ちている方がいました。
http://kenzo0107.hatenablog.com/entry/2016/05/20/105756
InnoDB バッファープールがオーバーして、MySQLが強制終了するようである。
このInnoDB バッファープールについては、下記のサイトを参考にした。
https://qiita.com/mita2/items/8fd915164f0851c96e54
まずは、
[ERROR] InnoDB: mmap(137232384 bytes) failed; errno 12
このエラーは、バッファーが、137232384 bytes(137M)でエラーになったと云う物
では、現在はバッファーがいくらまで利用できるかになっているか調べる。
mysql -u root -p
で、コンソールに入る。
SHOW GLOBAL VARIABLES LIKE ‘innodb_buffer_pool_size’;
とすると、バッファーサイズが表示される。
134217728と表示されている。
エラーになったのは、137232384 であるから、オーバーしているから、強制終了になった。
では、このバッファーサイズを増やすには・・・
vi /etc/my.cnf.d/server.cnf
[mysqld] skip-name-resolve innodb_buffer_pool_size = 512M innodb_log_buffer_size = 16M
とした。pool_size以外は、サイトを見て、追加した方が良いかなと。
mysqlを再起動して、再度mysqlのコンソールから、
SHOW GLOBAL VARIABLES LIKE ‘innodb_buffer_pool_size’;
を実施した。
innodb_buffer_pool_size | 536870912
と返されたので、設定は変更された。
あとは、様子をみて、MySQLが落ちなければ良い。
本日は、2度落ちた。