[Windows ] Windows 下开启SQL 慢查询日志

意义

  • 慢查询日志是用来记录执行时间超过指定时间的查询语句。通过慢查询日志,可以查找出哪些查询语句的执行效率很低,以便进行优化。
  • 一般建议开启,它对服务器性能的影响微乎其微,但是可以记录mysql服务器上执行了很长时间的查询语句。可以帮助我们定位性能问题的

开启方式

参考 http://lulijuan505.blog.163.com/blog/static/3083691120154120424353/

首先我们先查看MYSQL服务器的慢查询状态是否开启.执行如下命令:

show variables like '%quer%';
# 我们可以看到当前log_slow_queries状态为OFF, 说明当前并没有开启慢查询.

开启慢查询非常简单, 操作如下:
在my.ini文件中的[mysqld]后面添加如下信息:

[mysqld]
# 代表MYSQL慢查询的日志存储目录, 此目录文件一定要有写权限
log-slow-queries="C:/Program Files/MySQL/MySQL Server 5.5/log/mysql-slow.log"
# 最长执行时间
long_query_time = 4
# 没有使用到索引的查询也将被记录在日志中
log-queries-not-using-indexes 
 - Windows下需要写绝对路径,如:log-slow-queries="D:/do/mysql-5.5/log/mysql-slow.log"
 - 配置好以后重新启动MYSQL服务
- 重新执行show variables like '%quer%'; 发现已开启

实际测试

mysql 5.6 环境下测试

# General and Slow logging.
log-output=FILE
general-log=0
general_log_file="用户名.log"
# 开启标志
slow-query-log=1
# 日志命名
slow_query_log_file="用户名-slow.log"
# 超时时间(s)
long_query_time=10
  • 默认是开启的,一般百万级别以下的查询,在优化后可以缩短到2s以下,所以可以调整下超时参数

    long_query_time=2

  • 日志路径
    D:\ProgramData\MySQL\MySQL Server 5.6\data\用户名-slow.log

[Windows ] Windows 下开启SQL 慢查询日志_第1张图片

[Windows ] Windows 下开启SQL 慢查询日志_第2张图片

你可能感兴趣的:(MySQL,windows)