2012-02-16 14 views
0

私のアプリケーションのいくつかのINSERT文の実行優先度を上げようとしています。これらのステートメントの外観は次のとおりです。INSERTクエリの優先度

INSERT HIGH_PRIORITY INTO tbl values(......) 

これまでのところ、とても良いです。 (データベースがある)サーバ上でmtopを実行すると、HIGH_PRIORITYキーワードを持つクエリが実行キューに残っていて、他のクエリが実行されるのを待っていることがわかります。

クエリの優先順位を上げるにはどうすればよいですか?

答えて

0

MySQLサーバエンジン5.1以降を使用している場合、これが理由で、ドキュメントをに従って:

あなたがHIGH_PRIORITYを指定した場合ならば、それは --low-優先-updatesオプションの効果を無効にしますサーバーはそのオプションで開始されました。同時挿入が使用されない原因にもなります。

LOW_PRIORITYおよびHIGH_PRIORITYは、テーブルレベルのロック(MyISAM、MEMORY、およびMERGEなど)を使用するストレージエンジンにのみ影響します。

InnoDBストレージエンジンを使用している場合は、少なくともこれらの特定のテーブルに対して変更することを検討してください。 http://dev.mysql.com/doc/refman/5.1/en/insert.html

+0

私はMyISAMを使用します。 – foho

+0

次に、説明したように優先順位が機能するはずです.MySQLサーバのバージョンは何ですか? 4.xを使用している場合は、優先順位が正しくサポートされていないか、バグがあります。 – bodi0