時間のかかるMySQLレコードのSQL例の詳細な説明

時間のかかるMySQLレコードのSQL例の詳細な説明

mysqlは時間のかかるSQLを記録します

MySQL は、最適化と分析のために、時間のかかる SQL やインデックスを使用しない SQL をスロー ログに記録できます。

1. MySQL スロークエリログを有効にする:

MySQL スロー クエリ ログは、問題のあるクエリを追跡するのに非常に役立ちます。現在のプログラムで多くのリソースを消費する SQL ステートメントを分析できます。では、MySQL スロー クエリ ログの記録をオンにするにはどうすればよいでしょうか。

mysql> 'log_slow_queries' のような変数を表示します。
+------------------+-------+
| 変数名 | 値 |
+------------------+-------+
| log_slow_queries | オフ | 
+------------------+-------+
セット内の1行(0.01秒)

マイSQL> 

これは、スロー ログ機能が有効になっていないことを意味します。有効にするには、MySQL 構成ファイルを変更し、構成ファイル "[mysqld]" に次の 2 つのパラメータを追加する必要があります。

長いクエリ時間=1
ログスロークエリ=/var/mysql/logs/slow.log

例示する

長いクエリ時間

このパラメータは、スロー クエリの測定時間を秒単位で示します。最小値は 1、デフォルト値は 10 です。long_query_time よりも長い時間がかかる SQL ステートメントは、スロー クエリ ログに記録されます。

ログスロークエリ[=ファイル名]

file_name パラメータはオプションです。デフォルト値は host_name-slow.log です。file_name パラメータが指定されている場合、MySQL はスロー クエリ ログを file_name で設定されたファイルに記録します。file_name が相対パスを提供する場合、MySQL はログを MySQL データ ディレクトリに記録します。このパラメータは構成ファイルにのみ追加でき、コマンド ラインでは実行できません。

2. 未使用のインデックスクエリを記録するようにスローログを構成する

MySQL 起動構成ファイルまたはコマンド ライン パラメータに「log_queries_not_using_indexes」パラメータを追加して、インデックスを使用しないクエリ ステートメントをスロー ログに追加できます。

例は以下のとおりです。

[root@localhost mysqlsla-2.03]# /etc/my.cnf の詳細 
[mysqld]
データディレクトリ=/var/lib/mysql
log_bin=/tmp/mysql/bin-log/mysql-bin.log
ログビン=オン
ソケット=/var/lib/mysql/mysql.sock
ユーザー=mysql
# mysql 3.x との互換性のため、デフォルトで古いパスワード形式を使用します
# クライアント (mysqlclient10 互換パッケージを使用しているクライアント)。
古いパスワード=1


log_slow_queries=/tmp/127_slow.log
長いクエリ時間=1
インデックスを使用しないログクエリ

.......

mysql を再起動すると、検査結果は次のようになります。

mysql> 'log_slow_queries' のような変数を表示します。
+------------------+-------+
| 変数名 | 値 |
+------------------+-------+
| log_slow_queries | オン | 
+------------------+-------+
セット内の 1 行 (0.00 秒)

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

マイSQL>

上記は、MySQL の記録に時間がかかる SQL の例の詳細な説明です。ご質問がある場合は、メッセージを残すか、このサイトのコミュニティで議論してください。お読みいただきありがとうございます。皆様のお役に立てれば幸いです。このサイトのサポートに感謝します!

以下もご興味があるかもしれません:
  • MySQL データ ウェアハウスを保護するための 5 つのヒント
  • MySQL で URL タイムゾーンの罠を回避する方法
  • CentOS YumでMySQL 5.6をコンパイルしてインストールする
  • AES_ENCRYPT() と AES_DECRYPT() を使用して MySQL を暗号化および復号化する正しい方法の例
  • MySQL で準備、実行、割り当て解除ステートメントを使用するチュートリアル
  • MySQL での PDO 操作の基本チュートリアル (推奨)

<<:  Tomcatのデフォルトプログラム公開パスの使用と変更についての説明

>>:  CocosCreator ユニバーサルフレームワークデザインネットワーク

推薦する

Nginx 急ぎ購入 電流制限構成 実装分析

ビジネス上のニーズにより、急ぎの購入が発生することが多いため、ロード バランシング フロント エンド...

よくあるNginxの設定ミスの例

目次ルートの場所が見つかりませんオフバイスラッシュ安全でない変数の使用スクリプト名$uri を使用す...

インデックスを使用して数千万のデータを持つ MySQL のクエリ速度を最適化する

1. インデックスの役割一般的に言えば、インデックスは本の目次に相当します。条件に基づいてクエリを実...

MySQLログシステムの使い方に関する簡単なチュートリアル

目次序文1. エラーログ2. バイナリログ1. バイナリログを有効にする2. バイナリログ形式3. ...

JavaScript フロントエンドのタイムアウト非同期操作に最適なソリューション

目次コードの実行に長い時間がかかる場合はどうなりますか? Axiosにはタイムアウト処理機能が搭載さ...

純粋な CSS3 で実装された三目並べゲーム

操作効果: html <div class="三目並べ"> <...

仮想マシンクローン Linux centos6.5 システム ネットワーク カード構成グラフィック チュートリアル

Linux システムに触れたばかりの初心者として、VMware 仮想マシンに CentOS6.5 シ...

JavaScript のシングルトン デザイン パターン

目次1. デザインパターンとは何ですか? 2. デザインパターンの5つの設計原則(SOLID) 3....

MySQL クエリ フィールド タイプが json の場合の 2 つのクエリ メソッド

テーブル構造は次のとおりです。 id varchar(32) 情報JSONデータ: id = 1 i...

CSS で縦書きテキスト配置を実装する方法 (概要)

HTML でのテキストのデフォルトの配置は水平ですが、特殊な場合にはテキストを垂直に配置する必要が...

MySQLでよく使われる文字列関数トップ10の詳細な説明

こんにちは、みんな!技術の話ばかりで髪は切らないトニーです。データベース関数は、何らかの機能を持ち、...

JavaScript es6 における var、let、const の違いの詳細な説明

まず、よくある質問は、ECMAScript と JavaScript の関係は何ですか? ECMAS...

Vue lazyload 画像遅延読み込み例の詳細な説明

ドキュメント: https://github.com/hilongjw/vue-lazyload 1...

vue+tp5はシンプルなログイン機能を実現

この記事では、参考までに、簡単なログイン機能を実装するためのvue+tp5の具体的なコードを紹介しま...

Nginxのアクセス制限設定の詳細な説明

Nginxのアクセス制限設定とはNginx のアクセス制限は、IP ベースのアクセス制御とユーザーベ...