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を使用して中国語からピンインへの変換の完全な手順を実行します

推薦する

CSS でよく発生する問題の整理 (ロゴのハッキング/コンテナの固定/画像の垂直方向の中央揃え)

1. IEブラウザモードハックロゴ1. CSSハックロゴコードをコピーコードは次のとおりです。 ie...

Dockerfile を使用して Docker でイメージを構築する方法

イメージを構築するこれまで、テストやデモンストレーションにさまざまなイメージを使用しました。多くの場...

HTML ドロップダウン ボックスの SELECT オプションを変更する複数の方法

フォームが送信されると、返された HTML ページが再レンダリングされ、SELECT コントロールの...

CentOS仮想マシンの時刻を変更する方法

上はシステム時間、下はハードウェア時間です。ここでは変更を加えているので、同じくらいの速さになってい...

Vue3 がコンポーネント通信に mitt を使用する手順

目次1. インストール2. プロジェクトにインポートしてマウントする3. 使用Vue2.x はコンポ...

Windows に Docker をインストールする詳細なチュートリアル

ローカルの MySQL バージョンが比較的低いため、最近 MySQL のバージョンをアップグレードす...

MySQL のインデックスの原理とクエリの最適化の詳細な説明

目次1. はじめに1. インデックスとは何ですか? 2. インデックスはなぜ必要なのでしょうか? 2...

Nginx 最適化サービスで Web ページ圧縮を実装する方法

リソースを節約するためにWebページの圧縮を設定する1.まず、設定を変更しましょう vim /usr...

JavaScript Domはカルーセルの原理と例を実装します

カルーセルを作りたい場合、まずその原理を理解する必要があります。画像を右から左にスライドさせるにはど...

CentOS7 で Jenkins+Maven+Git 継続的インテグレーション環境を構築する方法

この記事では、Spring boot + Maven プロジェクトのデプロイメントを例に、Code ...

Layui は複数条件クエリのサンプルコードを実装します

最近ファイルシステムを作ったのですが、フィールドが多すぎることに気づきましたページングを使用した複数...

SASSで変数のデフォルト値を使用する方法

SASS で定義された変数では、後で設定された値によって古い値が上書きされます。 $色: 赤; $色...

JSで画面録画機能を作成する

OBS studioかっこいいですが、 JavaScriptもっとかっこいいです。では、 JavaS...

CSS で複数の境界線を実装するためのヒント

1. 複数の国境[1]背景: ボックスシャドウ、アウトライン使用シナリオの多様性を考慮すると、複数の...

JavaScript 正規表現の説明

目次1. 正規表現の作成2. 使用モード2.1 シンプルモードの使用2.2 特殊文字の使用3. 応用...