MySQL开启慢查询日志并使用pt

1.1 查看当前设置

MySQL> show variables like "%query%";

输出

+------------------------------+-----------------------------------------+
| Variable_name                | Value                                  |
+------------------------------+-----------------------------------------+
| binlog_rows_query_log_events | OFF                                    |
| ft_query_expansion_limit    | 20                                      |
| have_query_cache            | YES                                    |
| long_query_time              | 10.000000                              |
| query_alloc_block_size      | 8192                                    |
| query_cache_limit            | 1048576                                |
| query_cache_min_res_unit    | 4096                                    |
| query_cache_size            | 16777216                                |
| query_cache_type            | OFF                                    |
| query_cache_wlock_invalidate | OFF                                    |
| query_prealloc_size          | 8192                                    |
| slow_query_log              | OFF                                    |
| slow_query_log_file          | /var/lib/mysql/lgj-Lenovo-G470-slow.log |
+------------------------------+-----------------------------------------+

三个参数

slow_query_log  ON/OFF ,使能开关

slow_query_log_file  慢查询日志目录和文件名称

long_query_time    超过该时间则进行记录,5.1之前只设置到秒,5.1开始支持毫秒。

注意,开启慢查询会影响性能,因此应当在某一段时间内开启,记录一段时间后关闭掉。

1.2 配置

linuxidc@:~/db-analysis$ whereis mysql
mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/local/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

我的配置文件在/etc/mysql目录下的my.cnf

配置

[mysqld]
port=3307
skip-grant-tables
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

#打开慢查询
slow_query_log = ON
#设置超时时间为0,也就是记录所有的查询
long_query_time = 0

设置完后保存,重新启动mysql

service mysql  restart

重新查看参数,已经更改。

mysql> show variables like "%query%";
+------------------------------+-----------------------------------------+
| Variable_name                | Value                                  |
+------------------------------+-----------------------------------------+
| binlog_rows_query_log_events | OFF                                    |
| ft_query_expansion_limit    | 20                                      |
| have_query_cache            | YES                                    |
| long_query_time              | 0.000000                                |
| query_alloc_block_size      | 8192                                    |
| query_cache_limit            | 1048576                                |
| query_cache_min_res_unit    | 4096                                    |
| query_cache_size            | 16777216                                |
| query_cache_type            | OFF                                    |
| query_cache_wlock_invalidate | OFF                                    |
| query_prealloc_size          | 8192                                    |
| slow_query_log              | ON                                      |
| slow_query_log_file          | /var/lib/mysql/lgj-Lenovo-G470-slow.log |
+------------------------------+-----------------------------------------+

1.3 查询

随便执行一条查询语句,然后查看慢查询日志。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/0b6ca1095312a7a595ff4cef79c7b9a5.html