スロークエリログ関連のパラメータ MySQL スロー クエリ関連のパラメータの説明: slow_query_log: スロー クエリ ログを有効にするかどうか。1 は有効、0 は無効を意味します。
1.設定方法 スロークエリログを使用してキャプチャする 有効にする前にいくつかの設定が必要です 方法1: グローバル変数の設定 スロークエリログのログファイルの場所を設定する グローバル slow_query_log_file を "D:/slow_log/slow_log.log" に設定します。 インデックスを使用しないSQL文をログに記録するかどうかを設定します グローバル log_queries_not_using_indexes をオンに設定します。 SQL実行時間がn秒を超える限り記録するように設定する グローバルlong_query_timeを0.001に設定します。 ここでの 0.001 秒の設定はテスト用です。通常はこれよりも大きい値になります。 MySQL スロークエリログを有効にする グローバル slow_query_log をオンに設定します。 方法2: 構成ファイルの設定 設定ファイルmy.cnfを変更し、[mysqld]の下に以下を追加します。 [mysqld] slow_query_log = オン log_queries_not_using_indexes = オン; slow_query_log_file = /usr/local/mysql/data/slow.log 長いクエリ時間 = 1 設定後のパラメータを表示する 「slow_query%」のような変数を表示します。 'long_query__time' のような変数を表示します。 2. スロークエリログレコードの内容 時間IDコマンド引数 # 時間: 2019-01-08T04:12:09.269315Z # ユーザー@ホスト: h5_test[h5_test] @ localhost [::1] ID: 12 # クエリ時間: 0.000831 ロック時間: 0.000198 送信行数: 1 検査行数: 3 mc_productdb を使用します。 タイムスタンプを1546920729に設定します。 t.customer_id、t.title、t.contentを選択します。 から ( SELECT customer_id FROM product_comment WHERE product_id = 199726 AND Audit_status = 1 LIMIT 0,15 )a JOIN product_comment t a.customer_id = t.comment_id; の場合
3. スロークエリログを分析する方法 使用方法: mysqldumpslow [ OPTS... ] [ LOGS... ] MySQLのスロークエリログを解析して要約します。オプションは次のとおりです。 --verbose 詳細 --debug デバッグ --help このテキストを標準出力に書き込む -v 詳細 -d デバッグ -s ORDER 何を基準に並べ替えるか (al、at、ar、c、l、r、t)、デフォルトは 'at' al: 平均ロック時間 ar: 送信された行の平均数 at: 平均クエリ時間 c: カウント l: ロック時間 r: 送信された行数 t: クエリ時間 -r ソート順を逆にする(最初ではなく最後が最大) -t NUM 上位n個のクエリのみを表示 -a すべての数値をNに、文字列を'S'に抽象化しない -n NUM 名前に少なくとも n 桁の数字が含まれる抽象番号 -g PATTERN grep: この文字列を含む文のみ考慮する -h HOSTNAME *-slow.log ファイル名の db サーバーのホスト名 (ワイルドカードも使用可能)、 デフォルトは「*」で、すべてに一致します -i NAME サーバーインスタンス名(mysql.server 起動スクリプトを使用している場合) -l 合計時間からロック時間を減算しない スロークエリログには多数の繰り返しSQLが含まれるため、便宜上、MySQLが提供するコマンドラインツールmysqldumpslowを使用してログを分析することができます。 $ mysqldumpslow.pl slow_log.log slow_log.log から mysql スロークエリログを読み取る カウント: 1 時間=0.00秒 (0秒) ロック=0.00秒 (0秒) 行=0.0 (0)、0ユーザー@0ホスト C:\Program Files\MySQL\MySQL Server NN\bin\mysqld.exe、バージョン: NNN-log (MySQL Community Server (GPL))。次で開始されました: TCP ポート: N、名前付きパイプ: MySQL # 時刻: NN-08T04:N:N.269315Z # ユーザー@ホスト: h5_test[h5_test] @ localhost [::N] ID: N # クエリ時間: NN ロック時間: NN 送信行数: N 検査行数: N mc_productdb を使用します。 タイムスタンプをNに設定します。 t.customer_id、t.title、t.contentを選択します。 から ( SELECT customer_id FROM product_comment WHERE product_id = N AND Audit_status = N LIMIT N,N )a JOIN product_comment t a.customer_id = t.comment_id の場合 スロークエリログに記録されるデータは、スロークエリログに記録されるデータと似ていますが、スロークエリログの記録期間中にこの SQL が実行された回数を記録する Count という行が追加されています。SQL が複数回実行された場合、このコマンドで分析すると 1 つの SQL ログのみが表示されます。Count の値は実行回数を表し、他の数字はマージのために N に置き換えられます。 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: CentOS7 での PostgreSQL 11 の詳細なインストールと設定のチュートリアル
1. Dockerの紹介Docker は Linux オペレーティングシステムの一部の機能をベースに...
序文: MySQL データベースは、よく使用される集計関数、日付および文字列処理関数など、幅広い関数...
目次1. キューを理解する2. カプセル化キュー3. 太鼓をたたいて花を渡す場合1. キューを理解す...
MySQL データをエクスポートする目的は、データベースのバックアップ、テーブル構造のエクスポート、...
1. Docker とは何ですか? (1)DockerはLinuxコンテナ内でアプリケーションを実行...
これがないと、ブラウザはページをレンダリングするときに Quirks モードを使用することがわかって...
何ですかまず、Docker の概念を見てみましょう。アプリケーションと実行環境をコンテナにパッケージ...
0. システム要件CPU I5-10400F以上メモリ 16 GB、32 GBのメモリが最適ハードド...
この記事では、Web ページの作成を学習するときに注意すべき HTML タグに関するいくつかの問題を...
この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...
序文最近、パソコンのシャットダウンに時間がかかることが多く、強制的にシャットダウンするには電源ボタン...
デフォルトでは、Flash は常にページのトップレベルに表示されます。つまり、ページに DHTML ...
序文非表示要素の 3 つの属性である表示、可視性、不透明度の類似点と相違点は、フロントエンドの就職面...
Tomcatはプロジェクトにアクセスします。通常はIP + ポート + プロジェクト名です。 Ngi...
1. Vueルーティングの権限制御には一般的に2つの方法がありますa. ルーティングメタ情報(メタ)...