MySQL5.6でメモリ使用量が肥大化したときの対処

肥大化といっても400MB程度なんですが、
EC2のMicroインスタンスなどで起動しようとして起動できなかったりOOM Killerに落とされたりすることがあります。

原因は仕様変更らしいのですが、
table_definition_cache の値が大きくなってしまっているようです。(912とか1400とか)

データベースを一つしか使っていないのであれば今までの400もあれば十分なので以下のように変更します。

値確認

show variables like 'table_definition_cache';

設定変更

vim /etc/my.cnf
-----------------
table_definition_cache=400
-----------------
service mysqld restart