MySql のスロークエリ分析とスロークエリログの開き方の詳細説明

MySql のスロークエリ分析とスロークエリログの開き方の詳細説明

最近はMySQLのパフォーマンス最適化についても研究しているので、今日の投稿は勉強ノートとしても使えます。

パートナーが開発したプロジェクトでは、MySQL のトラブルシューティングやパフォーマンスのボトルネックの検出時に最も簡単に見つけて解決できる問題は、MYSQL でのクエリの遅さとインデックスのないクエリです。

次に、MySQL バージョン 5.0 以降でスロー クエリ ログを有効にする方法を説明します。

さて、MySQL で実行するのが「快適」ではない SQL ステートメントを見つけ始めましょう。

まず、mysql コマンドを使用して mysql コマンドラインを入力します。

[root@yunuo_vm ~]# mysql -u root -p
パスワードを入力してください:
MySQL モニターへようこそ。コマンドは ; または \g で終わります。
MySQL接続IDは4977です
サーバーバージョン: 5.6.17 ソース配布
 
Copyright (c) 2000, 2014, Oracle およびその関連会社。無断複写・転載を禁じます。
 
OracleはOracle Corporationおよびその関連会社の登録商標です。
その他の名称は各社の商標である場合があります。
所有者。
 
ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。
 
マイSQL>

ps: ここでのMySQLのバージョンは5.6.17です

さて、コンソールに入りました。次に、デフォルトの MySQL 構成で遅いクエリと見なされるまでに何秒かかるかを確認しましょう。

mysql> 'long%' のような変数を表示します。
+-----------------+-----------+
| 変数名 | 値 |
+-----------------+-----------+
| 長いクエリ時間 | 10.000000 |
+-----------------+-----------+
セット内の 1 行 (0.00 秒)

上記の表に示すように、システムのデフォルトのスロークエリの時間制限は 10 秒です。これを 1 秒に変更してみましょう (実際の状況に応じて設定することもできます)。

mysql> set long_query_time=1; 注: これを 1 に設定しました。これは、実行に 1 秒以上かかるクエリは遅いクエリとみなされることを意味します。
クエリは正常、影響を受けた行は 0 行 (0.00 秒)

おお!最後に、MySQL でスロー クエリ ログが有効になっているかどうかを確認します。

mysql> 'slow%' のような変数を表示します。
+---------------------+---------------+
| 変数名 | 値 |
+---------------------+---------------+
| 遅い起動時間 | 2 | 
| slow_query_log | オフ |
| slow_query_log_file | /tmp/slow.log |
+---------------------+---------------+

追伸:

slow_query_log //ログを開くかどうか

slow_query_log_file //ログの保存場所

MySQL はデフォルトではスロークエリを有効にしません。有効にしてみましょう:

mysql> グローバル slow_query_log を 'ON' に設定します。
クエリは正常、影響を受けた行は 0 行 (0.00 秒)

それでおしまい! ! !簡単じゃないですか?

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MYSQL5.7.9 でスロークエリログを有効にするヒント
  • MySQL の遅いクエリ検索とチューニングテスト
  • MySQL スロークエリログの設定と使用方法のチュートリアル
  • MySQL でスロークエリログを有効にする方法
  • MySQL スロークエリログの分析に関する基本チュートリアル
  • MySQLの遅いクエリが失敗の原因となった
  • 遅いSQL文が変換をトリガーしました

<<:  Ubuntu で G++ を使用して CPP ファイルをコンパイルする

>>:  CentOS 7.5 に Python 3.6.6 を最初からインストールするための詳細なチュートリアル

推薦する

MySQL で大量のデータ (数千万) を素早く削除するためのいくつかの実用的なソリューションの詳細な説明

著者は最近、仕事でパフォーマンスのボトルネックの問題に遭遇しました。MySQL テーブルには毎日約 ...

Vueはvueメタ情報を使用して各ページのタイトルとメタ情報を設定します。

title: vue は vue-meta-info を使用して各ページのタイトルとメタ情報を設定...

Mysql で期間の交差をクエリする方法

MySQLクエリ期間の交差使用シナリオデータベース テーブルには、starttime と endti...

Windows 10 の仮想マシンに Mac システムをインストールするグラフィック チュートリアル

1. 仮想マシンバージョン15.5.1をダウンロードする公式サイトから直接最新バージョンをダウンロー...

初心者向け入門チュートリアル④:サブディレクトリのバインド方法

これが何を意味するのかを理解するには、まずサブディレクトリとは何かを知る必要があります。では、サブデ...

CentOSにDockerをインストールする方法

ここでは比較的簡単なインストール方法のみを紹介します。 1. yumを使用してインストールするyum...

Linuxファイル削除後にスペースが解放されない問題の詳しい説明

序文システム領域の使用量が大きすぎて消去する必要がある場合、または特定のファイルを消去する必要がある...

初心者のためのウェブサイト構築入門 - ウェブサイト構築に必要な条件とツール

今日は、初心者の次のような質問に答えます。学ぶ勇気さえあれば、自分のウェブサイトを構築するのは簡単で...

最新の超詳細な VMware 仮想マシンのダウンロードとインストールのグラフィック チュートリアル

目次1. 仮想マシンをダウンロードする2. 仮想マシンのインストールVMware のダウンロードとイ...

純粋な CSS3 で美しい入力ボックスアニメーションスタイルライブラリを実現 (テキスト入力愛)

純粋な CSS3 で実装された美しい入力ボックス アニメーション スタイル ライブラリを共有します ...

Centos6でgitlabを構築する方法

序文元のプロジェクトは、パブリックネットワークgitlabに配置されていました。セキュリティ上の理由...

CSS3で実装された炎のアニメーション

成果を達成する実装コードhtml <div class="コンテナ">...

Reactホームページの読み込みが遅い問題のパフォーマンス最適化事例の詳細な説明

しばらくReactを勉強した後、実践してみたいと思います。そこで、個人のブログのウェブサイトを再構築...

Docker のタイムゾーンの問題とデータ移行の問題

最新のソリューション: -v /usr/share/zoneinfo/Asia/Shanghai:/...

Dockerイメージをプライベートリポジトリにアップロードする方法の例

イメージは、GitHub と同様に Docker パブリック リポジトリに直接簡単にプッシュできます...