2

oracle sql plusでは、パフォーマンステストを実行しているときに、

set autotrace traceonly:

これにより、実際の結果を出力せずにクエリプランと統計が表示されます。mysqlに同等のものはありますか?

4

2 に答える 2

2

いいえ、少なくともコミュニティエディションでは、MySQLで利用できる同等のものはありません。

MySQLは、Oracleのコードにあるような「インストルメンテーション」を実装していません。したがって、イベント10046トレースに相当するものはありません。

SELECTステートメントの前にEXPLAINキーワードを付けることができます。これにより、MySQLがステートメントの実行に使用する実行プランに関する情報が出力されますが、これは単なる見積もりであり、実際の実行の監視ではありません。

サーバーで低速のクエリログを有効にして、long_query_time実行に数秒以上かかるSQLステートメントをキャプチャすることもできますが、実際には、実行時間の長いクエリのみが識別されます。これにより、経過時間と調べた行数とともにSQLテキストが得られます。

于 2013-01-26T00:24:51.423 に答える
-1

クエリプランを取得するには、クエリEXPLAINの先頭に追加するだけSELECTです。

EXPLAIN SELECT * FROM table

また、それがあなたが話している統計である場合、読み取られる行の数を推定します。

于 2013-01-25T22:47:08.420 に答える