MySQL でスロークエリログ機能を有効にする方法

MySQL でスロークエリログ機能を有効にする方法

MySQL スロー クエリ ログは、問題のあるクエリを追跡するのに非常に役立ちます。現在のプログラムに多くのリソースを消費する SQL ステートメントがあるかどうかを分析できます。これは便利なログです。パフォーマンスへの影響はほとんどなく (すべてのクエリが高速であると仮定)、最も注意が必要なクエリ (インデックスが欠落しているか、インデックスが最適に適用されていない) が強調表示されます。では、MySQL の低速クエリ ログを有効にするにはどうすればよいでしょうか。

スロークエリログを有効にすると、MySQL は指定された時間を超えるクエリステートメントを記録できます。パフォーマンスのボトルネックを特定して分析することで、データベース システムのパフォーマンスをより最適化できます。

(1)構成開始

リナックス:

MySQL 構成ファイル my.cnf に次のステートメントを追加します。

log-slow-queries=/var/lib/mysql/slowquery.log #ログファイルの保存場所を指定します。空でもかまいません。システムはデフォルトのファイル host_name-slow.log を指定します。
long_query_time=5 #超過した時間を記録します。デフォルトは 10 秒ですが、ここではクエリ時間が 5 秒を超えるクエリ ステートメントに設定します log-queries-not-using-indexes = on #インデックスを使用しないクエリ ステートメントを一覧表示します #log-queries-not-using-indexes インデックスを使用しないすべてのクエリを記録するかどうか。状況に応じてオンにするかどうかを決定できます #log-long-format インデックスを使用しないクエリを含むすべてのクエリ レコードを記録するかどうか

ウィンドウズ:

my.ini の [mysqld] に次のステートメントを追加します (ステートメントのオプションとその意味は上記と同じです)。

ログスロークエリ = E:\mysql\log\mysqlslowquery.log
長いクエリ時間 = 5

(2)鑑賞方法

リナックス:

mysqldumpslowコマンドを使用して表示する

一般的なコマンド

  • -s ORDER 何を基準に並べ替えるか (t、at、l、al、r、ar など)、デフォルトは 'at'
  • -t NUM 上位n個のクエリのみを表示
  • -g PATTERN grep: この文字列を含む文のみ考慮する

例えば:

-s は順序です。説明が十分詳細ではありません。私はそれを使用しており、コードを読みました。主に c、t、l、r と ac、at、al、ar があり、それぞれクエリ回数、時間、ロック時間、返されたレコード数でソートされます。前に a を追加すると順序が逆になります。

-t は上位 n を意味し、返されるレコードの数を意味します。

-g、その後に通常のマッチングパターンを書くことができます。大文字と小文字は区別されません。

具体的なコマンドは以下のとおりです。

mysqldumpslow -sc -t 20 ホストの遅い.log

mysqldumpslow -sr -t 20 ホストの遅い.log

上記のコマンドは、アクセス回数が最も多い 20 個の SQL ステートメントと、返されたレコードが最も多い 20 個の SQL ステートメントを表示できます。

mysqldumpslow -t 10 -st -g “left join” host-slow.log時間別に left join を含む最初の 10 個の SQL ステートメントを返します。

ウィンドウズ:

MySQLスロークエリを初めて有効にすると、指定したディレクトリにログファイルが作成されます。この記事ではmysqlslowquery.logです。このファイルの内容は次のとおりです(MYSQLスロークエリを初めて有効にしたとき)

E:\web\mysql\bin\mysqld、バージョン: 5.4.3-beta-community-log (MySQL Community Server (GPL))。次で開始:
TCP ポート: 3306、名前付きパイプ: (null)
時間IDコマンド引数

次のコマンドを使用して、遅いクエリ レコードの数を表示できます。

mysql> '%slow%' のようなグローバル ステータスを表示します。
+---------------------+-------+
| 変数名 | 値 |
+---------------------+-------+
| 遅い起動スレッド | 0 |
| 遅いクエリ | 0 |
+---------------------+-------+

テスト

1. 低速クエリSQL文を実行する

mysql> sleep(2) を選択します。

2. スロークエリログが生成されているかどうかを確認する

ls /usr/local/mysql/data/slow.log

ログが存在する場合、MySQL スロー クエリ設定が正常に有効化されています。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • MySql のスロークエリ分析とスロークエリログの開き方の詳細説明
  • MySQL のスロークエリログを有効にする方法 log-slow-queries
  • MYSQL5.7.9 でスロークエリログを有効にするヒント
  • mysql のスロークエリを有効にする方法 mysql のスロークエリのログを有効にする方法
  • MySQL でスロークエリログを有効にする方法
  • MySQLデータベースでスロークエリログを有効にする方法の詳細な説明
  • MySQL スロークエリログの役割と公開
  • MySQL スロークエリログの有効化と設定
  • MySQL最適化ソリューション: スロークエリログを有効にする

<<:  Zabbix上のすべてのホストのIPとホスト名を取得する

>>:  jsを使用して中国語からピンインへの変換の完全な手順を実行します

推薦する

jquery-multiselect を使用した IE6 のバグの解決方法

jquery-multiselect (ドロップダウン ボックスをチェックボックス付きの複数選択コン...

VMWare を使用して Windows 上で Linux 環境を構築する手順 (画像とテキスト)

Mac を返却して以来、元のラップトップは使用されていません。このラップトップの構成は非常に良好で...

Vue スキャフォールディング学習プロジェクト作成方法

1. 足場とは何ですか? 1. Vue CLI Vue CLI は、Vue.js をベースにした迅速...

MySQL Installer Community 5.7.16 インストール詳細チュートリアル

この記事では、MySQL インストールの詳細なチュートリアルを記録し、全員と共有します。 1. バー...

Docker-compose インストール db2 データベース操作

db2 データベースをホストマシンに直接インストールするのは面倒で、ユーザーや権限を巻き込むのも不便...

ウェブページを作るときに知っておくべきいくつかのスキル

1. IE6 では z-index が無効です。 CSS では、階層を変更するために z-index...

ネイティブ js はフォームの定期的な検証を実装します (検証後にのみ送信)

以下の機能が実装されています。 1. ユーザー名: onfouc は msg ルールを表示します。o...

Linuxのip netnsコマンドを使用してネットワークポートを分離し、IPアドレスを設定します。

1. 分離マーカーを追加します。 ip netns add fd 2. 指定されたネットワーク カ...

HTML ハイパーリンクの詳細な説明

ハイパーリンクハイパーリンクは、Web サイト上のすべてのページがハイパーリンクで接続され、ページ間...

動的および静的分離を実装するための Nginx サンプル コード

この記事のシナリオと組み合わせて、Nginx と Java 環境 (SpringBoot プロジェク...

HTML ウェブページのメタビューポート属性の説明

HTML メタビューポート属性の説明ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウ...

Xmeter APIインターフェーステストツールの使用状況の分析

XMeter API は、以下のサービスを含む、JMeter に基づくワンストップのオンライン イン...

HTMLフォーム送信方法のケーススタディ

フォームの送信方法をまとめると次のようになります。 1. 送信ボタンを使用して送信します。送信ボタン...

Vue イメージ ドラッグ アンド ドロップ ズーム コンポーネントの使用方法の詳細な説明

Vueイメージドラッグアンドドロップズームコンポーネントの具体的な使い方は参考までに。具体的な内容は...

Vue プロジェクトのパッケージ化、マージ、圧縮により、Web ページの応答速度を最適化します。

目次序文1. リクエスト内容が大きすぎる解決: CDN の紹介リクエストリソースを圧縮する1. HT...