一、MySql的慢查询日志的开启和存储
1、查看是否把没有使用索引的SQL记录到慢查询日志中,查看 log_queries_not_using_indexes 变量;
show VARIABLES LIKE "log_queries_%"
结果:
![0ccf9ed73c97dc37002b5d3d10590c60.png](https://img8.php1.cn/3cdc5/12477/a6e/7930e0cb8f3fc195.jpeg)
查询到的值若为OFF, 表示没有记录, 设置为on来开启记录;
set global log_queries_not_using_indexes = on;
2、查看查询时间 long_query_time ,即查询的时间大于这个值(单位为秒),则记录SQL到慢查询日志中;
show VARIABLES LIKE "long_query_time"
结果:
![e3a68bff3ab9a3966f899bf955748a69.png](https://img8.php1.cn/3cdc5/12477/a6e/6b1871a447850b0a.jpeg)
set global long_query_time=0.1; /* 设置为100ms */
重新打开一个查询的窗口,查询 long_query_time 的值被修改为0.1;
结果:
![c6cc1a01c8abf908a6ae26d8c5eec388.png](https://img8.php1.cn/3cdc5/12477/a6e/a0cd079b1f67ce61.jpeg)
3、查看是否开启了慢查询日志,变量 slow_query_log ;
show VARIABLES LIKE "slow_query_log"
若值为Off, 表示没有开启;应该设置为On来开启;
set global slow_query_log = on;
4、查看慢查询日志记录的位置,查看 slow_query_log_file 变量
show VARIABLES LIKE "slow%"
结果:
![de36840f31a4d47a16a881fc747e97b6.png](https://img8.php1.cn/3cdc5/12477/a6e/7ce28e9c8ed0ec75.jpeg)
5、慢查询日志的存储格式:
![2370669172e10ef9461d73b90afb66fc.png](https://img8.php1.cn/3cdc5/12477/a6e/7f37b0dc79823397.jpeg)
6、慢查询日志的分析工具
(1)mysqldumpslow 的使用, 查看帮忙
![5db981afb8c3f1bfaf95f7a1f8f94b9e.png](https://img8.php1.cn/3cdc5/12477/a6e/08059b98278e277c.jpeg)
(2)查看路径在/home/mysql/data/mysql-slow.log 的慢查询日志的 top 的前3条;
![9e43388e539486cdfd2fadb1b3aec6d0.png](https://img8.php1.cn/3cdc5/12477/a6e/a71e3fe65f737367.jpeg)
结果:
![e666d331cc40eeaa2be3e3f552d0b6ff.png](https://img8.php1.cn/3cdc5/12477/a6e/d23f72c977a47c64.jpeg)
原文:https://www.cnblogs.com/yufeng218/p/9114437.html