温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

mysql慢查询查看

发布时间:2020-06-05 16:11:02 来源:网络 阅读:312 作者:三月 栏目:MySQL数据库

下文我给大家简单讲讲关于mysql慢查询查看,大家之前了解过相关类似主题内容吗?感兴趣的话就一起来看看这篇文章吧,相信看完mysql慢查询查看对大家多少有点帮助吧。

MYSQL慢查询


一、查看系统所有参数状态:

mysql> show variables


二、查看慢查询的定义:

mysql> show variables like '%quer%';

| log_slow_queries              | ON                            |

| long_query_time               | 5.000000                      |

mysql> show variables like 'slow%';

+---------------------+-------------------------------+

| Variable_name       | Value                         |

+---------------------+-------------------------------+

| slow_launch_time    | 5                             |

| slow_query_log      | ON                            |

| slow_query_log_file | /var/log/mysql/slow_query_log |

+---------------------+-------------------------------+

3 rows in set (0.00 sec)


三、修改慢查询定义:

1.立即修改:

开启慢查询功能、时间定义

mysql> SET log_slow_queries=on;

mysql> SET long_query_time=5;

开启慢查询记录功能、时间定义、文件保存位置

mysql> SET slow_query_log=on;

mysql> SET slow_launch_time=5;

mysql> SET slow_query_log_file=/var/log/mysql/slow_query_log;

2.修改配置文件(需要重启服务)

vim /etc/my.cnf

开启慢查询功能、时间定义

log_slow_queries=on|off

long_query_time=5

开启慢查询记录功能、时间定义、文件保存位置

slow_query_log=on|off

slow_launch_time=5

slow_query_log_file=/var/log/mysql/slow_query_log

重启服务

service mysql restart


四、其他设置

1.记录所有没有使用到索引的查询语句

log_queries_not_using_indexes=on|off

2.记录那些由于查找了多余1000次而引发的慢查询

min_examined_row_limit=1000

3.记录那些慢的OPTIMIZE TABLE,ANALYZE TABLE和ALTER TABLE语句

log-slow-admin-statements

4.记录由slave所产生的慢查询

log-slow-slave-statements


五、日志分析工具mysqldumpslow

-s, 是表示按照何种方式排序:

c: 访问计数

l: 锁定时间

r: 返回记录

t: 查询时间

al:平均锁定时间

ar:平均返回记录数

at:平均查询时间

-t, 是top n的意思,即为返回前面多少条的数据;

-g, 后边可以写一个正则匹配模式,大小写不敏感的;

例:

1.得到返回记录集最多的10个SQL。

mysqldumpslow -s r -t 10 /var/log/mysql/slow_query_log/mysql06_slow.log

2.得到访问次数最多的10个SQL

mysqldumpslow -s c -t 10 /var/log/mysql/slow_query_log/mysql06_slow.log

3.得到按照时间排序的前10条里面含有左连接的查询语句。

mysqldumpslow -s t -t 10 -g “left join” /var/log/mysql/slow_query_log/mysql06_slow.log

4.另外建议在使用这些命令时结合 | 和more 使用 ,否则有可能出现刷屏的情况。

mysqldumpslow -s r -t 20 /var/log/mysql/slow_query_log/mysql06-slow.log | more

大家觉得mysql慢查询查看这篇文章怎么样,是否有所收获。如果想要了解更多相关,可以继续关注我们的行业资讯板块。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI