パフォーマンステストでMySQLでスロークエリを検出する方法

パフォーマンステストでMySQLでスロークエリを検出する方法

MySQLでスロークエリをログ出力する方法です。

mysql> show variables like 'slow%';
+---------------------+--------------------------+
| Variable_name       | Value                    |
+---------------------+--------------------------+
| slow_launch_time    | 2                        |
| slow_query_log      | ON                       |
| slow_query_log_file | DESKTOP-DNSQQ62-slow.log |
+---------------------+--------------------------+
3 rows in set, 1 warning (0.06 sec)

slow_query_logがOFFになっていたらmy.ini(my.cnf)でONにします。

また、指定した秒以上かかったSQLのみをログ出力することが可能です。

mysql> show variables like 'long%';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set, 1 warning (0.00 sec)

my.ini

slow-query-log=1
slow_query_log_file="DESKTOP-DNSQQ62-slow.log"
long_query_time=1 // 1秒以上かかるSQLはログ出力するように設定変更する

slow_query_log_fileで指定したログファイルは、C:\ProgramData\MySQL\MySQL Server 5.7\Data配下に出力されます。

これでMySQLサービスを再起動すると、指定した秒数より遅いスロークエリはログに出力されるようになります。

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました