ワシはワシが育てる

週刊少年ジャンプと任天堂のゲームが三度のメシより好きです。

MySQL5.6がやたらとメモリを消費する問題

MySQL5.6にアップグレードするとやたらとメモリが消費されていることがあります。
AWSのmicroインスタンスだと起動した段階で全体の約80%、450MBほど食ってしまいます。

原因はシンプルで/etc/my.cnfを一行修正すればOKです。

table_definition_cache=400

デフォルトだとtable_definition_cache(キャッシュできるテーブル定義数)が1400になっているので、400に減らして再起動すれば40MB強にまで節約できます。

テーブルが少ないうちは400でも問題ない(というか5.5まで400がデフォルト)はずですので、特にメモリが少ないサーバの場合はぜひ下げておきましょう。