my.cnfはMySQLのインストール後に設定するおなじみのMySQLの設定ファイルです。
別に一から作れと言われているわけではなくて、元々4つのテンプレートが用意されています。

が、

おなじみすぎるということなのか、それぞれがどう違うのかっていうのがいまいち分からない。

本やWebで調べてみると、ほとんどが「自分の環境に合ったものを選んで」とか、「サーバのメモリ容量に合わせて」とか、挙句の果てには「自分の好みで」とか書いてあります。
しかし、「自分の環境に合ったもの」、「サーバのメモリ容量に合わせる」ための基準は何なのか、という重要な部分が見当たりません。

検索のしかたが悪いのか、この4つのテンプレートの違いがヒットせず、かといって適当に設定するのも気が引けたので調べてみました。
 


my.cnfのテンプレートファイルはサイズの大きい順に4つ。
違いは、MySQLをインストールしたサーバが搭載しているメモリの容量によって変わるようです。
まとめると以下のような感じになります。


my-huge.cnf
1G~2Gのメモリを搭載したMySQL専用サーバ向け

my-large.cnf
512M以上のメモリを搭載したMySQL専用サーバ向け

my-medium.cnf
128M程度のメモリを搭載した用途多数の共有サーバの中で、MySQLに32~64Mのメモリを使用できるサーバ向け

my-small.cnf
64M以下のメモリしか搭載できないサーバ向け


どんな用途でMySQLを使用するかによって変わりますが、一般的にはmediumを使用して問題ないようです。
ようやく設定が分かって一安心。インストール後の設定も無事済みました。

やっぱり好みで選んではいけないような気がします。

MySQL ポケットリファレンス (Pocket Reference)
MySQL ポケットリファレンス (Pocket Reference)
Amazon価格:¥ 2,604 (価格は3月12日 21:11現在)
私のおすすめ度:★★★
Amazonおすすめ度:★★★★★