侧边栏壁纸
博主头像
流苏小筑 博主等级

行动起来,活在当下

  • 累计撰写 139 篇文章
  • 累计创建 57 个标签
  • 累计收到 9 条评论

目 录CONTENT

文章目录

sql慢日志查询

Administrator
2019-06-08 / 0 评论 / 0 点赞 / 2 阅读 / 0 字

MySQl提供了一种日志记录,终于记录响应时间超过阈值的sql语句(long_query_time,默认10s),默认关闭,开发时打开,部署时关闭

检查是否开启慢查询日志:show variables like '%slow_query_log%'

  • 临时开启:set gloabl slow_query_log = 1;在内存里
  • 永久开启:/etc/my.cnf

    [mysqld]
    slow_query_log = 1
    slow_query_log_file = /slow.log
  • 慢查询阈值

    • 临时设置:set global slow_query_time = 5;
    • 永久设置:/etc/my.cnf
    [mysqld]
    slow_query_time = 5

查询超过阈值的sql

1.show global status varibales like '%slow——queries%',具体通过日志查看
2.通过mysqldumpslow工具查看慢sql
s:排序方式
r:逆序
i:锁定时间
g:正则匹配模式

  • 获取返回记录最多的3个sql:mysqldumpslow -s -t 3 /日志路径
  • 获取访问次数最多的3个sql:mysqldumpslow -s c -t 3 /日志路径
  • 按照时间排序,钱10条包含left join的sql:mysqldumpslow -s t -t 10 -g " left join" /日志路径
0

评论区