mysql如何找出慢sql

Mysql   2023-03-15 10:05   555   0  

一、如何查看慢sql:

long_query_time  参数的查看
默认是10秒,10秒以上的sql会记录。可进行值的修改,
long_query_time 默认不开启   ,如果不是需要进行开始调优,一般不建议开启此参数。

二、查看是否开启

show variables like '%slow_query_log%'

三、临时开启:重启后失效

set global slow_query_log = 1

永久开启:
在my.cnf中的

[mysqld]
slow_query_log = 1
slow_query_log_file = /usr/local/mysql/data/appledeMacBook-Pro-slow.log

四、修改慢查询的默认数值

1.查看慢查询的时长

show variables like 'long_query_time'


图2


看此图默认10秒,是大于10秒,不等于10秒。
2.修改此时长
临时修改,重启mysql后失效,修改后需要新开连接才能查询到

set global long_query_time = 3

永久在配制文件中修改

 [mysqld]
long_query_time = 3

查看慢sql个数

show global status like '%slow_queries%';


图4

将所有没有使用带索引的查询语句全部写到慢查询日志中

show variables like '%log_queries_not_using_indexes%'

设置没带索引的慢sql进行记录

set global log_queries_not_using_indexes = 1

最后汇总my.cnf配制

 [mysqld]
#开启慢sql
slow_query_log = 1
#msql存放位置
slow_query_log_file = /usr/local/mysql/data/appledeMacBook-Pro-slow.log
#慢sql的值大于多少秒
long_query_time = 3
#日志输出为文件
log_output=file
#将所有没有使用带索引的查询语句全部写到慢查询日志中
set global log_queries_not_using_indexes = 1
博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。
闲言碎语
有些人努力了一辈子,也就从社会的四流进入了三流。
赞赏支持

如果觉得博客文章对您有帮助,异或土豪有钱任性,可以通过以下扫码向我捐助。也可以动动手指,帮我分享和传播。您的肯定,是我不懈努力的动力!感谢各位亲~