mysql5.6 メモリ使用量を減らす。
mysql5.6でやたらメモリを使用するため、取り急ぎ対応した
事象
なぜかmysqlのプロセスが450MBのメモリを使用していた。
# ps alx | grep mysql | awk '{printf ("%d\t%s\n", $8,$13)}'1400 /bin/sh452404 /usr/local/mysql/bin/mysqld916 grep |
調査、検証
そのため、ちょいと調査。
下記にバグ?っぽいこと、あと対処方法が書いてあるので、実施。
http://bugs.mysql.com/bug.php?id=68980
設定変更対象は、mysqlパラメータの「table_definition_cache」
定義キャッシュに保存できるテーブル定義数。テーブル数が多い場合は増やす。
しかし、wordpressくらいしか運用していないので、減らしてみる。
下記にバグ?っぽいこと、あと対処方法が書いてあるので、実施。
http://bugs.mysql.com/bug.php?id=68980
設定変更対象は、mysqlパラメータの「table_definition_cache」
定義キャッシュに保存できるテーブル定義数。テーブル数が多い場合は増やす。
しかし、wordpressくらいしか運用していないので、減らしてみる。
mysql> show variables like 'table_definition_cache'; +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | table_definition_cache | 1400 | +------------------------+-------+ # vi /etc/my.cnf+ table_definition_cache=400 mysql> show variables like 'table_definition_cache'; +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | table_definition_cache | 400 | +------------------------+-------+ |
再起動
# /etc/init.d/mysqld restartmysqld を停止中: [ OK ]mysqld を起動中: [ OK ] |
結果
メモリ量の確認。92MBまで減っていた。
# ps alx | grep mysql | awk '{printf ("%d\t%s\n", $8,$13)}'1400 /bin/sh92224 /usr/local/mysql/bin/mysqld916 grep |
無駄にキャッシュされていたのかな。
もう少し、チューニングが必要やな。
以上。