Mysql查看慢查询日志
0.环境
- windows10
- mysql5.7
1.需求
在平常的编程里,针对一个运行较慢的SQL,我们可能需要查看该SQL的“慢查询”日志,我们可以从这个日志中获取一些灵感,从而对SQL优化,减少查询时间。但是如何开启、查找mysql的慢查询日志呢?
2.实战
- 默认日志文件
mysql5.7版本默认开启了慢查日志,但是其日志文件名可能不是我们想要的,我们查询如下:
mysql> show variables like '%quer%';
+----------------------------------------+--------------------------+
| Variable_name | Value |
+----------------------------------------+--------------------------+
| binlog_rows_query_log_events | OFF |
| ft_query_expansion_limit | 20 |
| have_query_cache | YES |
| log_queries_not_using_indexes | OFF |
| log_throttle_queries_not_using_indexes | 0 |
| long_query_time | 10.000000 |
| query_alloc_block_size | 8192 |
| query_cache_limit | 1048576 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 1048576 |
| query_cache_type | OFF |
| query_cache_wlock_invalidate | OFF |
| query_prealloc_size | 8192 |
| slow_query_log | ON |
| slow_query_log_file | ICOS-20180710CX-slow.log |
+----------------------------------------+--------------------------+
15 rows in set, 1 warning (0.00 sec)
可以看到这个默认的慢查询日志文件名是:ICOS-20180710CX-slow.log
。而且这个slow_query_log
是开启状态的。
查看
my.ini
文件内容
修改
my.ini
文件的内容【注意windows下的路径】
最后重启mysql 服务,查看慢查询日志即可
3.注
一定要注意my.ini
这个文件的内容是在mysql data目录下,而不是在mysql的安装目录下。【有时候我们会把数据目录页放到安装目录下,所以才会造成my.ini
文件在安装目录下的错觉】