遅いクエリとは、実行時間がスケジュールされた時間と比較してスケジュールされた時間を超える SQL ステートメントを指します。遅いクエリが時間内に削除されないと、サーバー上のデータベースの実行パフォーマンスに大きな影響が出る可能性があります。したがって、実稼働環境で MySQL スロー クエリ ログを有効にすることが非常に重要です。
MySQL スロー クエリ ログは、パフォーマンスが低下しているクエリに関する詳細情報を公開するのに役立ちます。実稼働環境でのパフォーマンスの問題を診断して解決するときに非常に役立ちます。この記事では、MySQLのスロークエリログを有効にする方法を詳しく紹介します。
ステップ 1: MySQL スロー クエリ ログのデフォルト パスを確認する
MySQL スロー クエリ ログのデフォルト パスを確認する必要があります。 Linux システムでは、MySQL スロー クエリ ログは /var/lib/mysql/hostname-slow.log ファイルに保存されます。
ステップ 2: MySQL 構成ファイル my.cnf を編集する
MySQL スロー クエリ ログを有効にするには、MySQL 構成ファイルを編集する必要があります。 my.cnf ファイルは /etc/mysql/ ディレクトリにあります。
vim エディタを使用して my.cnf ファイルを開きます。
$ sudo vim /etc/mysql/my.cnf
ステップ 3: 次の内容を my.cnf ファイルに追加します。
次の内容をファイルの末尾に追加します。
slow_query_log = 1 slow_query_log_file = /var/lib/mysql/ hostname-slow.log long_query_time = 2
上記の構成では、
my.cnf ファイルを編集した後、ファイルを保存して閉じます。
ステップ 4: MySQL サービスを再起動する
MySQL サービスを再起動して、my.cnf ファイルの変更を有効にします。
$sudo service mysql restart
ステップ 5: MySQL スロー クエリ ログを確認する
MySQL スロー クエリ ログを確認するには、次のコマンドを入力します。
mysql> SHOW GLOBAL VARIABLES LIKE 'slow_query_log';
MySQL スロー クエリ ログが有効になっている場合結果は次のとおりです。
+----------------+-------+ | Variable_name | Value | +----------------+-------+ | slow_query_log | ON | +----------------+-------+
次のコマンドを使用して、スロー クエリ ログ ファイルを確認できます。
$ sudo cat /var/lib/mysql/ hostname-slow.log
クエリが long_query_time を超えた場合、ファイルに記録されます。
結論
MySQL スロー クエリ ログを有効にすると、クエリ実行時間に関する詳細な情報が得られます。これは、内部運用システムのパフォーマンス問題の診断と解決に非常に役立ちます。この記事では、Linux システムで MySQL スロー クエリ ログを有効にする方法を紹介します。 MySQL スロー クエリ ログを有効にする前に、必ずテスト環境でテストし、この機能が運用データベースに悪影響を及ぼさないことを確認するために十分なテストを行ってください。
以上がMySQL スロークエリログを有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。