ちょっと、入門的にえらい人に聞いた話。
MyISAM - テーブルロック
InnoDB - 行レベルロック
MyISAM - インデックスしかキャッシュされない
InnoDB - インデックスかデータかに関わらずメモリ上にキャッシュ
じゃあ、でーっかいマスタやログなど、ほぼSELECTのみテーブルならMyISAMがいいの?
って感じかも知れませんが、
MyISAMは、
マルチコア環境で性能がスケールしない
ってことがあり、何ともかんとも。。。
ま、最近はCPUのコア数がグングン増えてますので、
「MyISAM=パフォーマンスがいい」とも言えない感じですね。
まぁ、利用状況に応じてテストしろと。
MySQL5.6から、FULLTEXTインデックスのサポートで全文検索も使えるッぽいし、
テーブル移動も、それなりに出来る様になってきているようだし、
oracle社もMyISAMでできて、InnoDBで出来ないことをなくす動きっぽいので、
あまり、MyISAMを使う理由は無いかも。
結論:よほどのことじゃない限り、いまからはInnoDBでいいんジャマイカ