2013-06-18

MySQL5.6がメモリを沢山お召し上がりになる件

EC2のt1.microでMySQL 5.6.12を入れて試してみたところ
F   UID   PID  PPID PRI  NI    VSZ   RSS WCHAN STAT TTY TIME COMMAND
4   498  4594  4407  20   0 950456 434320 poll_s Sl  pts/0 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --pid-file=/var/lib/mysql/xxx.pid
な感じで、インストール直後ただ起動しただけで400MB超のメモリをお召し上がりになってしまっています
マイクロインスタンスにとってはこのメモリ使用量は致命的です・・・
なんとかして削減したいものです

ぐぐってみると
このあたりにバグっぽいことが書かれていたので、対処法に従い設定を変更してみました

まずは現状確認
mysql> show variables like 'table_definition_cache';
+------------------------+-------+
| Variable_name   | Value |
+------------------------+-------+
| table_definition_cache | 1400  |
+------------------------+-------+

そして、/usr/my.cnfに次の行を追加してmysqlを再起動
table_definition_cache=400

反映されているか確認
mysql> show variables like 'table_definition_cache';
+------------------------+-------+
| Variable_name   | Value |
+------------------------+-------+
| table_definition_cache | 400  |
+------------------------+-------+

さて、効果のほどは・・・・
F   UID   PID  PPID PRI  NI    VSZ   RSS WCHAN STAT TTY TIME COMMAND
4   498  6313  6114  20   0 527484 79332 poll_s Sl   pts/1 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --pid-file=/var/lib/mysql/xxx.pid

400MB超→79MBにまで減りました!ヾ(*・ω・)シ

0 件のコメント:

コメントを投稿