mysqlスロークエリログ - 選択 / *!n sql_no_cache * /
質問
使用 mysqldumpslow
, 、MySQLスロークエリログの最も一般的なエントリが次の形式であることがわかります。
SELECT /*!N SQL_NO_CACHE */ from wp_posts (or wp_comments).
この声明が何を意味するのか、WordPressがこのSQLを作成している場所を追跡しようとするのに十分な心配を必要とするかどうかについて、多くの情報を見つけることができないようです。
解決
これらのタイプの選択は、常にmysqldumpsによって実行されます。
クエリの開始時間の遅いログを見ると、これらの各選択の時間が毎日同じ時間である場合、それは間違いなくどこかでcrontab'になったmysqldumpから来ています。
これを排除するには、これを実行する必要があるかもしれません
SET GLOBAL slow_query_log = 'OFF';
次に、mysqldumpsを実行して、実行します
SET GLOBAL slow_query_log = 'ON';
これにより、このタイプの選択は、遅いログに不必要に着陸することから完全に排除するはずです。
他のヒント
この構文:
SELECT /*!N SQL_NO_CACHE */ * from wp_posts
MySqldumpで使用されています。 Cron経由でそれを使用していますか?
/* !50123 ... */
を含めることを意味します "..."
バージョン5.1.23以降を実行している場合のみ。これにより、MySqldump(およびその他の一般的なツール)は同じコードを使用できますが、機能が言及されていない古いシステムで動作します。
監視に使用するものは次のとおりです。
SHOW /*!50000 GLOBAL */ STATUS
ASを実行します SHOW STATUS
古いサーバー上または SHOW GLOBAL STATUS
5.0.0および新しいサーバー。
所属していません dba.stackexchange