mysql查询并设置高亮_慢查询分析调优工具~mysqldumpslow

在日常的业务开发中,MySQL出现慢查询是很常见的,要么说明你家产品的增长性很好,要么就是你的SQL写的太烂了。所以对慢查询SQL进行分析和优化很重要,其中mysqldumpslow是MySQL服务自带的一款很好的分析调优工具。

MySQL慢查询日志

MySQL提供的一种慢查询日志记录,用来记录在MySQL查询中响应时间超过阀值的记录具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中

查看慢查询设置情况

show variables like '%slow_query_log%';* slow_query_log //是否开启,默认关闭,建议调优时才开启* slow_query_log_file //慢查询日志存放目录
e51e5dac4e35cbdf9dd5cfe6b914c44e.png

如何开启慢查询日志记录

3.1 命令开启

set global slow_query_log =1; //只对当前会话生效,重启失效

3.2 配置文件开启

vim my.cnf在[mysqld]下添加:slow_query_log = 1slow_query_log_file = /var/lib/mysql/zdj-slow.log重启MySQL服务
0eee3c3ac961ac1cbabefea0e1c31279.png

哪些SQL会记录到慢查询日志

show variables like 'long_query_time%';//查看阀值(大于),默认10s
7460ca9e0dfbd00621060d1e237248a0.png

如何设置查询阀值

4.1 命令设置

set global long_query_time = 3 //设置慢查询阀值备注:另外开一个session或重新连接 才会看到变化
3e4a08dad29b4ac396525339c94832dd.png

4.2 配置文件设置

vim my.cnf在[mysqld]下添加:long_query_time = 3log_output = FILE重启MySQL服务

如何把未使用索引的SQL记录写入慢查询日志

show variables like 'log_queries_not_using_indexes'; //查看设置,默认关闭set global log_queries_not_using_indexes = on; //设置
7bce905d19c642ccb26b4bbaf189e030.png

模拟数据

select sleep(4);//睡眠4s再执行show global status like '%Slow_queries%';//查看慢查询条数
e830bfb6a7edd62095dc816d6a1387a8.png

日志分析工具:mysqldumpslow

mysqldumpslow [ OPTS... ] [ LOGS... ] //命令行格式
mysqldumpslow -hOption h requires an argumentERROR: bad optionUsage: mysqldumpslow [ OPTS... ] [ LOGS... ]Parse and summarize the MySQL slow query log. Options are  --verbose    verbose  --debug      debug  --help       write this text to standard output  -v           verbose  -d           debug  -s ORDER     what to sort by (al, at, ar, c, l, r, t), 'at' is default                al: average lock time                ar: average rows sent                at: average query time                 c: count                 l: lock time                 r: rows sent                 t: query time    -r           reverse the sort order (largest last instead of first)  -t NUM       just show the top n queries  -a           don't abstract all numbers to N and strings to 'S'  -n NUM       abstract numbers with at least n digits within names  -g PATTERN   grep: only consider stmts that include this string  -h HOSTNAME  hostname of db server for *-slow.log filename (can be wildcard),               default is '*', i.e. match all  -i NAME      name of server instance (if using mysql.server startup script)  -l           don't subtract lock time from total time
-s 表示按照何种方式排序       c 访问次数       l 锁定时间       r 返回记录       t 查询时间       al 平均锁定时间       ar 平均返回记录数       at  平均查询时间-t 返回前面多少条数据-g 后边搭配一个正则匹配模式,大小写不敏感

几个常用命令

得到返回记录集最多的10条SQL:mysqldumpslow -s r -t  10 /var/lib/mysql/695f5026f0f6-slow.log
得到访问次数最多的10条SQL:mysqldumpslow -s r -t  10 /var/lib/mysql/695f5026f0f6-slow.log
得到按照时间排序的前10条里面含有左连接的SQL:mysqldumpslow -s t -t 10 -g "left join" /var/lib/mysql/695f5026f0f6-slow.log也支持管道符命令mysqldumpslow -s t -t 10 -g "left join" /var/lib/mysql/695f5026f0f6-slow.log | more //分页显示

慢查询日志记录内容

cat /var/lib/mysql/695f5026f0f6-slow.log //查看慢查询日志
-- 执行SQL时间# Time: 2019-12-31T05:54:23.893042Z-- 执行SQL的主机信息# User@Host: root[root] @ localhost []  Id:    40-- SQL的执行信息# Query_time: 4.013664  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 1-- SQL执行时间SET timestamp=1577771659;-- SQL内容select sleep(4);
5e394e546d8c3b2a2caf802200cb505b.png

再结合explain关键字进一步分析优化

请阅读此篇:一张图彻底搞定MySQL的explain

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245434.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

非法的表达式开始_轮回、开始还是结束?

上节课说到&#xff0c;要打印0-9这十个数字&#xff0c;除了一个一个的 document.write 还有什么办法?下面介绍一个for语法for (var 变量 初始值; 结束判断表达式; 变量递增/递减) { 循环体&#xff0c;用于处理变量;}我们来实操一下for (var c0;c<9;cc1) { do…

sql 统计记录条数后 打印出所有记录_用SQL完成购买行为分析(下篇II)

&#xff08;接《用SQL完成购买行为分析&#xff08;下篇I&#xff09;》内容&#xff09;12&#xff09;查询首条记录为fav&#xff0c;总记录条数为14的记录。将前面getNum(3)红框处替换为12&#xff0c;运行getNum(14)得到第2条记录的数量&#xff1a;替换为11&#xff0c;得…

library的英语怎么读音_library怎么读声音

library的英式读音和美式读音均为&#xff1a;[ˈlaɪbrəri]。library可作名词&#xff0c;其作名词时&#xff0c;中文意思有&#xff1a;图书馆&#xff1b;藏书楼&#xff1b;图书室&#xff1b;资料室&#xff1b;(书、激光唱片等的)个人收藏等含义。一、library 读音英式…

sift线特征提取代码_车道线检测LaneNet

LanNetSegmentation branch完成语义分割,即判断出像素属于车道or背景Embedding branch完成像素的向量表示,用于后续聚类,以完成实例分割H-NetSegmentation branch解决样本分布不均衡车道线像素远小于背景像素.loss函数的设计对不同像素赋给不同权重,降低背景权重.该分支的输出为…

mysql ehcache_MyBatis使用Ehcache作为二级缓存

特别说明&#xff1a;由于二级缓存是基于Mapper的&#xff0c;当你在不同的mapper中查询了相同的数据&#xff0c;例如不同的Mapper中有多表查询时结果中有相同的数据&#xff0c;当其中一个Mapper进行插入更新缓存时&#xff0c;另一个并没有插入更新&#xff0c;那么使用两个…

yii3正式版什么时候发布_华为mate50pro什么时候发布

阅读本文前&#xff0c;请您先点击上面的蓝色字体&#xff0c;再点击“关注”&#xff0c;这样您就可以继续免费收到文章了。每天都有分享&#xff0c;完全是免费订阅&#xff0c;请放心关注。 …

shiro如何保证session不失效_请问在不加锁的情况下如何保证线程安全?

概念compare and swap&#xff0c;解决多线程并行情况下使用锁造成性能损耗的一种机制&#xff0c;CAS操作包含三个操作数——内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预期原值相匹配&#xff0c;那么处理器会自动将该位置值更新为新值。否则&#xff0c;处理器…

externalreferences 命令在 sdi 模式下不可用_一个适合新手交互式Git命令学习项目

前言在我们日常工作开发中&#xff0c;Git是必不可少的版本控制软件&#xff0c;很多时候我们都用Git来管理我们的项目。比较常用的有Github&#xff0c;Gitlab&#xff0c;Stash等。因此对于Git命令的掌握是我们工作必备的能力。今天分享一个Git命令学习项目&#xff1a;learn…

sqlyong 删除数据能否撤回_数据结构知识点总结

some quoted by Fundebug&#xff1a;代码面试需要知道的8种数据结构(附面试题及答案链接)​zhuanlan.zhihu.comadded with other sources8 种常用数据结构数组栈队列链表图树哈希表priorityqueue1. 数组数组(Array)大概是最简单&#xff0c;也是最常用的数据结构了。其他数据结…

matlab 点云特征_基于点云的3D障碍物检测

击上方“新机器视觉”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达基于点云的3D障碍物检测主要有以下步骤&#xff1a;点云数据的处理基于点云的障碍物分割障碍物边框构建点云到图像平面的投影点云数据的处理KITTI数据集KITTI数据集有四个相…

重定义 不同的基类型_镍及铁镍基耐蚀合金高温合金哈氏合金镍基合金之第一篇概述...

纯镍是一种重要的应用于工业的原材料&#xff0c;它除具有良好 的强度、塑韧性外&#xff0c;在卤族元素及其氢化物活泼性气体、苛 性介质、不含氧和氧化剂的还原性酸介质中还具有良好的耐 蚀性&#xff0c;因此纯镍作为耐蚀金属材料得到广泛应用。此外&#xff0c;由 于提高耐…

cad统计面积长度插件vlx_用了它,画cad施工图再也不加班了!

文尾左下角阅读原文看视频教程好课推荐&#xff1a;1、CAD2014&#xff1a;点击查看 2、室内CAD&#xff1a;点击查看 3、CAD2019&#xff1a;点击查看4、CAD2018&#xff1a;点击查看5、Bim教程&#xff1a;点击查看6、室内手绘&#xff1a;点击查看7、CAD三维&#xff1a;点击…

mysql 视图 查询速度慢_mysql 视图查询速度慢

场景&#xff1a;表 stockpooldata_flashCREATE TABLE stockpooldata_flash (id bigint(15) NOT NULL AUTO_INCREMENT,formula_id int(8) DEFAULT NULL,period_type tinyint(3) DEFAULT NULL,gpMarket int(4) DEFAULT NULL,gpcode varchar(20) DEFAULT NULL,ymd int(11) DEFAUL…

局部页面切换url为什么不变_python爬虫 - 翻页url不变网页的爬虫探究

python爬虫-翻页url不变网页的爬虫探究url随着翻页改变的爬虫已经有非常多教程啦&#xff0c;这里主要记录一下我对翻页url不变网页的探究过程。学术菜鸡第一次写CSDN&#xff0c;请大家多多包容&#xff5e; 如果对你有一点点帮助&#xff0c;请帮我点个赞吧&#xff01;翻页u…

python波峰波谷算法_波动均分算法

波动均分算法by leeenx on 2018-01-11「波动」和「均分」大部分读者朋友是知道的&#xff0c;但看到「波动均分」应该是一头雾水的。其实&#xff0c;这个名词是笔者拼凑出来的。什么是「波动均分」&#xff1f;把指定的数值 A&#xff0c;分成 N 份&#xff0c;此时每份的数值…

java web 注册登录_javaweb实现登录注册功能实例

前期呢&#xff0c;我们学习了javaweb项目用JDBC连接数据库&#xff0c;还有数据库的建表功能&#xff0c;今天&#xff0c;我们来看一下javaweb实现登录注册功能实例&#xff0c;javaweb项目使用的工具是eclipse&#xff0c;最后把项目部署在了Tomcat中&#xff0c;连接数据库…

source insight 函数不能跳到definition_小技能: Windows10突然不能复制粘贴谁搞鬼

最近连续遇到几次&#xff0c;电脑突然不能复制粘贴了&#xff0c;非常影响工作。(如果不想听我扯&#xff0c;就直接跳到最后看结果啊&#xff0c;我真贴心。)你们都懂得&#xff0c;程序员嘛&#xff0c;用的最多的就是ctrlc&#xff0c;ctrlv。这不能用了&#xff0c;不是让…

hsv 明度的范围_通过HSV转换的方式实现图片数据增强

在我的上一篇文章中&#xff0c;我记录了自己将MOT17-Det数据集转换成VOC格式&#xff1a;HUST小菜鸡&#xff1a;将MOT17-Det数据集转成VOC格式​zhuanlan.zhihu.com但是在后期的测试过程中&#xff0c;发现了一些小问题&#xff1a;首先是train.txt里面写入的图片数和标注的数…

java protected关键字_Java 权限protected关键字纠正

以前一直认为自己理解了Java四种权限访问&#xff0c;昨天突然编程时发现protected居然在子类中不能调用&#xff0c;然后越看越迷糊&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;public&#xff1a; Java语言中访问限制最宽的修饰符&#xff0c;…

互联网java常用框架_来,带你鸟瞰 Java 中4款常用的并发框架!

1. 为什么要写这篇文章几年前 NoSQL 开始流行的时候&#xff0c;像其他团队一样&#xff0c;我们的团队也热衷于令人兴奋的新东西&#xff0c;并且计划替换一个应用程序的数据库。 但是&#xff0c;当深入实现细节时&#xff0c;我们想起了一位智者曾经说过的话&#xff1a;“细…