MyISAMとInnoDBについて
移転しました。
MySQLでMyISAMのエンジンを使うメリットほぼないような気がするのだが、
絶対MyISAMじゃなきゃだめ!
みたいな人いるのだろうか。。
MyISAMとくらべ、InnoDBのメリット
・InnoDBはMyISAMと比較して安全(OSクラッシュや電源断が発生してもテーブルが壊れない)
・トランザクション制御がInnoDBは可能
・テーブルロックではなく行ロック
・InnoDBは外部キー制約がある
・InnoDBはトランザクション制御ができる
などなど
MyISAMに比べInnoDBのデメリット
・MyISAMに比べ書き込みが遅い。
→ただしパラメータ設定により、書込み速度を上げることもできる
http://d.hatena.ne.jp/kazuhooku/20091029/1256775791
・1つの巨大ファイルができてしまう。
→ただしパラメータ設定により、テーブルごとのファイルに分ける事が可能
http://cl.pocari.org/2006-07-07-2.html
・検索が遅いと言われている。
→ただし、パラメータをチューニングすれば速度は早くなるはず
MyISAMでもよいテーブル
消えてもよいログデータを保持するテーブル
運用の手間について
巨大ファイルは分割する事ができるので
(http://cl.pocari.org/2006-07-07-2.html)
一度手順を決めてしまえば、それほど面倒でないはず。