最近になって初めて知ったんですが、MySQLの適切な設定値を教えてくれるMySQLTunerというのがあるんですね。
my.cnfの細かい設定とかに詳しくないのでこういうの助かります。
で、自鯖で試してみました。
まずは
https://github.com/major/MySQLTuner-perl
から、mysqltuner.plをダウンロードするか作成する。
https://raw.github.com/major/MySQLTuner-perl/master/mysqltuner.pl
で、次にmysqltuner.plに実行権限を付けるわけですな。
rootでログインしているなら
chmod 744 mysqltuner.pl
./mysqltuner.pl
でおkと。
この結果を踏まえて、my.cnfを
—————————
max_connections (> 151)
wait_timeout (< 28800)
interactive_timeout (< 28800)
query_cache_size (> 16M)
join_buffer_size (> 16.0M, or always use indexes with joins)
innodb_buffer_pool_size (>= 8G)
innodb_log_buffer_size (>= 1M)
key_buffer_size (> 406.4M)
—————————
の通りに設定してみました。
・・・って、
サーバのメモリが8Gやのにwww
って思ってたら、案の定innoDBがどーたらこーたらでエラー出ました。
なのでそこだけちょっと抑えました。
結果を見てる限りではLoadAverageの平均値が下がってるようなので良い感じに設定できたのかなぁと思います。