ホームページ >データベース >mysql チュートリアル >時間のかかる SQL ステートメントを記録する mysql の詳細な例
mysql は時間のかかる SQL を記録します
mysql は、最適化と分析のために、時間のかかる SQL またはインデックスのない SQL を低速ログに記録できます。この記事では主に、mysql レコードの時間のかかる SQL 例の詳細な説明に関する情報を紹介します。必要な方は参考にしていただければ幸いです。
1. mysql スロー クエリ ログを有効にする:
mysql スロー クエリ ログは、現在のプログラムでリソースを消費する SQL ステートメントを分析するのに非常に役立ちます。 mysql とは何ですか?
mysql> show variables like 'log_slow_queries'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | log_slow_queries | OFF | +------------------+-------+ 1 row in set (0.01 sec) mysql>
これは、スローログ機能が有効になっていないことを意味し、これを有効にするには、mysql 設定ファイル「[mysqld]」に次の 2 つのパラメータを追加する必要があります。
long_query_time=1 log-slow-queries=/var/mysql/logs/slow.log説明
long_query_time
log-slow-queries[=file_name]
2. 未使用のインデックスクエリをスローログに記録する設定
[root@localhost mysqlsla-2.03]# more /etc/my.cnf [mysqld] datadir=/var/lib/mysql log_bin=/tmp/mysql/bin-log/mysql-bin.log log_bin=ON socket=/var/lib/mysql/mysql.sock user=mysql # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 log_slow_queries=/tmp/127_slow.log long_query_time=1 log_queries_not_using_indexes .......mysqlを再起動した後のチェック結果は次のとおりです:
mysql> show variables like 'log_slow_queries'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | log_slow_queries | ON | +------------------+-------+ 1 row in set (0.00 sec) mysql> show variables like 'long_query_time'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | long_query_time | 2 | +-----------------+-------+ 1 row in set (0.00 sec) mysql>関連推奨事項:
以上が時間のかかる SQL ステートメントを記録する mysql の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。