当前位置:网站首页>Mysql-如何进行慢SQL查询
Mysql-如何进行慢SQL查询
2022-08-03 02:03:00 【程序员超时空】
打开慢日志开关
因为开启慢查询日志是有代价的(跟 bin log、optimizer-trace 一样),所以它默认是关闭的:
show variables like 'slow_query%';
除了这个开关,还有一个参数,控制执行超过多长时间的 SQL 才记录到慢日志,默认是 10 秒。
除了这个开关,还有一个参数,控制执行超过多长时间的 SQL 才记录到慢日志,默认是 10 秒。
show variables like '%long_query%';
可以直接动态修改参数(重启后失效)。
set @@global.slow_query_log=1; -- 1 开启,0 关闭,重启后失效
set @@global.long_query_time=3; -- mysql 默认的慢查询时间是 10 秒,另开一个窗口后才会查到最新值
show variables like '%long_query%';
show variables like '%slow_query%';
或者修改配置文件 my.cnf。
以下配置定义了慢查询日志的开关、慢查询的时间、日志文件的存放路径。
slow_query_log = ON
long_query_time=2
slow_query_log_file =/var/lib/mysql/localhost-slow.log
模拟慢查询:
select sleep(10);
查询 user_innodb 表的 500 万数据(检查是不是没有索引)。
SELECT * FROM `user_innodb` where phone = '136';
慢日志分析
1、日志内容
show global status like 'slow_queries'; -- 查看有多少慢查询
show variables like '%slow_query%'; -- 获取慢日志目录
cat /var/lib/mysql/ localhost-slow.log
有了慢查询日志,怎么去分析统计呢?比如 SQL 语句的出现的慢查询次数最多,平均每次执行了多久?人工肉眼分析显然不可能。
2、mysqldumpslow
MySQL 提供了 mysqldumpslow 的工具,在 MySQL 的 bin 目录下。
mysqldumpslow --help
例如:查询用时最多的 10 条慢 SQL:
mysqldumpslow -s t -t 10 -g 'select' /var/lib/mysql/localhost-slow.log
Count 代表这个 SQL 执行了多少次;
Time 代表执行的时间,括号里面是累计时间;
Lock 表示锁定的时间,括号是累计;
Rows 表示返回的记录数,括号是累计。
除了慢查询日志之外,还有一个 SHOW PROFILE 工具可以使用
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- 会话技术!
- PHICOMM(斐讯)N1盒子 - recovery模式救砖卡登录页LOGO卡1%卡4%卡26%
- Violent recursion to dynamic programming 06 (the sword refers to Offer II 095. Longest common subsequence)
- 南瓜科学新品上线 开辟益智玩具新世界
- 能添加任意贴图超级复布局的初级智能文本提示器(超级版)
- HCIP第十二天_二层MPLS实验
- vs studio install opencv environment
- 为什么要使用 playwright 做浏览器自动化测试?
- Shell脚本乘法口诀等小实验
- 5.软件测试-----自动化测试
猜你喜欢
易购数码类电商商城网页设计与实现项目源码
ldap创建公司组织、人员
EasyGBS播放器优化:设备通道视频播放出现跳屏问题的修复
Wei Dongshan Digital Photo Frame Project Learning (5) Transplantation of libjpeg-turbo
5. Software testing ----- automated testing
visual studio 2012 为啥这么优秀
The LVS load balancing cluster and the deployment of the LVS - NAT experiment
怎么从零编写一个 v3 版本的 chrome 浏览器插件实现 CSDN 博客网站的暗黑和明亮主题切换?
【Swoole系列3.3】单进程管理Process
10大领域5大过程47子过程快速记忆
随机推荐
【云原生】阿里云ARMS业务实时监控
JVM内部结构图及各模块运行机制总结
不想当Window的Dialog不是一个好Modal,弹窗翻身记...
Excel 如何比较两列字符串是否相同?
5.软件测试-----自动化测试
公司封装方式导出excel过程
能添加任意贴图超级复布局的初级智能文本提示器
【Swoole系列3.3】单进程管理Process
新库上线 | CnOpenDataA股上市公司董监高信息数据
Conversational Technology!
Brute force recursion to dynamic programming 07 (516. Longest palindrome subsequence)
一些面试的总结
二叉树的前序遍历、中序遍历、后序遍历和层序遍历
Get the first/last day of the current week, month, quarter in MySQL
Kook机器人开发日志01
PHICOMM(斐讯)N1盒子 - recovery模式救砖卡登录页LOGO卡1%卡4%卡26%
QCheckBox、margin、border、pandding、QHoxLayout、QSplitter、QSpacerItem
initramfs详解----设备文件系统
复杂多层布局的初级智能文本提示器
任意版本JLink驱动官方下载指引