2011-07-30 15 views
0

私はmySQLサーバを使用しています。私は、mySQLがInnoDBとMYISAMの両方のエンジンを使用していることに気付きました。私は、どのエンジンがInnoDBかMYISAMを選択すべきかを知りたいです。InnoDBとMYISAMのどちらが良いですか?

+4

その質問には「それはあなたが必要なものに依存します」と答える以外にすることは事実上不可能です。 ACIDトランザクションが必要な場合はInnoDBを使用してください。完璧な整合性についてはあまり気にしませんが、未処理の速度を望む場合は、InnoDBを使用してください。 – Damon

+0

最後にMyISAMが必要です。 – duffymo

+0

あなたはおそらく生のスピードを必要としないことを示唆するかもしれません。そうしておけば、必要なときに譲歩することができますが、InnoDBの方がはるかにクリーンです。 – Clueless

答えて

3

InnoDBはそれとして、好ましいかもしれませんMyISAMは外部キーを強制して削除や更新をカスケードする能力がありません。

InnoDBのもう一つの重要な特徴はトランザクションです。トランザクションとして複数のステートメントを処理する必要がある場合は、InnoDBを使用してください。

0

InnoDBはすべての新しいMySQLインストールのデフォルトにする必要があります。 MyISAMを使用しないでください。

この記事では、MyISAMの対InnoDBの比較があります。 http://www.mysqlperformanceblog.com/2009/01/12/should-you-move-from-myisam-to-innodb/

また、次のStackOverflowの記事を参照してください。あなたが管理するために、多くの外部キー関係を持っている場合 MyISAM versus InnoDB

1

InnoDBはより現代的なストレージエンジンであり、より信頼性が高いと考えられています(アトミックトランザクションや外部キー制約などのサポート)。

しかし、MyISAMのほうがパフォーマンスが高く、全文検索が可能です。

FTSが必要ない場合は、InnoDBをお勧めします。

いくつかの追加の読書:http://blog.inetu.net/2009/04/mysql-innodb-or-myisam/

関連する問題