15

何千もの結果を返すクエリがありますが、MySQLコンソールまたはコマンドラインから実際の結果なしでクエリ時間のみを表示することは可能ですか?

4

2 に答える 2

7

SET profiling = 1;コマンドプロンプトで使用します。

詳細については、を参照してください

結果を取得したり、SQLを実行したりせずに、実行時間を取得することはできません。

実際のクエリ実行なしでは実行時間を取得できない理由をご覧ください

于 2012-05-29T11:15:30.710 に答える
4

Linuxを使用している場合。

  1. ファイルquery.sqlを作成します
  2. テストするクエリを入力します。例えばselect * from table1
  3. 次のコマンドを実行します。

time mysql your_db_name -u'db_user_name' -p'your_password' < query.sql > /dev/null

出力は次のようになります。

real    0m4.383s    
user    0m0.022s    
sys     0m0.004s

「本物の」線はあなたが見ているものです。上記の例では、クエリに4.38秒かかりました。

明らかに、コマンドラインでDBパスワードを入力することはそれほど素晴らしい考えではありませんが、迅速で汚い回避策として機能します。

于 2018-10-27T09:21:00.787 に答える