美文网首页
Mysql高级(八) 慢查询日志

Mysql高级(八) 慢查询日志

作者: 卡戎li | 来源:发表于2020-05-03 22:45 被阅读0次

一、 查询与开启慢查询日志

show variables like "%slow_query_log%";

图片.png
  • 临时开启, 重启后失效

set GLOBAL slow_query_log = 1

图片.png

二、查询与修改慢查询时间

show variables like "%long_query_time%";

图片.png

set GLOBAL long_query_time = 2

  • 当前窗口 show variables like "%long_query_time%" 不变


    图片.png
  • 当前窗口 show global variables like "%long_query_time%" 改变


    图片.png
  • 新开窗口 show variables like "%long_query_time%" 改变


    图片.png
  • 查询有多少条慢日志

show global status like '%Slow_queries%';

三、修改配置文件方式修改

[mysqld] 下修改

slow_query_log=1;
slow_query_log_file=XXXX
long_query_time=2;
log_output=FILE;

四、查看慢日志

[root@iZhp3349o7pntezql2q5puZ ~]# cat /var/lib/mysql/iZhp3349o7pntezql2q5puZ-slow.log
/usr/sbin/mysqld, Version: 8.0.19 (MySQL Community Server - GPL). started with:
Tcp port: 3306  Unix socket: /var/lib/mysql/mysql.sock
Time                 Id Command    Argument
/usr/sbin/mysqld, Version: 8.0.19 (MySQL Community Server - GPL). started with:
Tcp port: 3306  Unix socket: /var/lib/mysql/mysql.sock
Time                 Id Command    Argument
# Time: 2020-05-03T14:29:31.415397Z
# User@Host: root[root] @  [120.230.99.38]  Id:  5042
# Query_time: 5.000252  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 1
use flink;
SET timestamp=1588516166;
select sleep(5);
[root@iZhp3349o7pntezql2q5puZ ~]#

五、使用 mysqldumpslow 慢日志分析工具

命令:

-s 按照那种方式排序
c:访问计数
l:锁定时间
r:返回记录
al:平均锁定时间
ar:平均访问记录数
at:平均查询时间
-t 是top n的意思,返回多少条数据。
-g 可以跟上正则匹配模式,大小写不敏感。

  • 得到返回记录最多的20个sql

mysqldumpslow -s r -t 20 sqlslow.log

  • 得到平均访问次数最多的20条sql

mysqldumpslow -s ar -t 20 sqlslow.log

  • 得到平均访问次数最多,并且里面含有ttt字符的20条sql

mysqldumpslow -s ar -t 20 -g "ttt" sqldlow.log

参考博客 : https://blog.csdn.net/sunyuhua_keyboard/article/details/81204020

相关文章

  • Mysql 慢查询日志

    Mysql 慢查询日志 慢查询日志 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中...

  • MySQL慢查询日志总结

    MySQL慢查询日志总结 慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MyS...

  • Mysql高级(八) 慢查询日志

    一、 查询与开启慢查询日志 show variables like "%slow_query_log%"; 临时开...

  • MySQL慢查询日志如何开启以及分析

    1、MySQL慢查询日志是什么 (1)MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录MySQL中...

  • 慢查询日志

    1、慢查询日志介绍 慢查询日志是什么? 1.MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在My...

  • mysql调优及常用命令

    mysql常用命令 慢查询日志 mysqlddumpslow(查看慢查询日志) mysql5.7(虚拟列) mys...

  • 开启MySQL慢查询日志

    查询慢日志开关是否开启 打开慢查询日志开关 再次查询,发现开关打开了 查询mysql安装路径 慢查询日志默认是放在...

  • mysql 开启慢查询及其用mysqldumpslow做日志分析

    mysql 开启慢查询 mysql慢查询日志是mysql提供的一种日志记录,它是用来记录在mysql中相应时间超过...

  • MySQL之binlog日志、undo日志、redo日志

    一、MySQL常用的几种日志 MySQL主要包含以下几种日志: 错误日志 查询日志 慢查询日志 事务日志 [und...

  • mysql-慢查询日志

    1、什么是慢查询日志 mysql慢查询日志是mysql提供的一种日志记录,它用来记录在MySQL中响应时间超过...

网友评论

      本文标题:Mysql高级(八) 慢查询日志

      本文链接:https://www.haomeiwen.com/subject/shxsghtx.html