構成されたサーバーでの基本パフォーマンスは次のとおりです。
- InnoDB:5.71秒
- MyISAM:2.50秒
これは悪くない 私の本では、しかしそれはいくつかの微調整を使用することができます。
InnoDBのパフォーマンスは、いくつかの面で改善できます。
innodb_buffer_pool_size
を増やします
- これは、最も重要な単一のInnoDB構成変数です。理想的には、MySQL専用サーバーで使用可能なRAMの70〜80%である必要があります InnoDB。
-
innodb_buffer_pool_size
を増やす サーバー上で2Gに(このテストには十分すぎるほど)減少 InnoDBの4.60秒までの時間
idを主キーにする
- InnoDBは、PRIMARYKEYに基づいてデータをクラスター化します。宣言しない場合、InnoDBは暗黙的にランダムなものを生成します。シーケンシャル主キー(id)を持つことは、ランダムなキーよりも高速です。
- サーバーのIDを主キーにする減少 InnoDBの3.80秒までの時間
MySQL/InnoDBをアップグレードする
MySQL 5.1以降では、MySQLはプラグ可能なストレージエンジンをサポートします。具体的には、新しいInnoDBプラグイン 。
新しいInnoDBエンジンは、多くのパフォーマンスの強化を提供します。 この特定のタイプのクエリに大きな影響を与えます。
注意:
- MySQL 5.1.38の時点で、InnoDBプラグインはMySQLに含まれています
- MySQL 5.1.43の時点で、InnoDBプラグインが含まれているだけでなく、MySQLのデフォルトエンジンです