当前位置:网站首页>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开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
Wireshark data capture and analysis of the transport layer protocol (TCP protocol)
Excel 如何比较两列字符串是否相同?
Violent recursion to dynamic programming 06 (the sword refers to Offer II 095. Longest common subsequence)
能添加任意贴图超级复布局的初级智能文本提示器
”QSqlDatabasePrivate::removeDatabase: connection ‘test-connect‘ is still in use“数据库多次打开报错
WordPress博客问答小插件
ldap创建公司组织、人员
Topic Modeling of Short Texts: A Pseudo-Document View
【Arduino】重生之Arduino 学僧(3)----Arduino函数
粘包与拆包
韦东山 数码相框 项目学习(五)libjpeg-turbo的移植
How does Excel compare if two columns of strings are the same?
超级复杂可贴图布局的初级智能文本提示器
DTD约束和Schema约束
扩展卡尔曼滤波【转】
DJI内推码(2022年8月2日更新)
Summary of some interviews
radio button、qss文件环境配置
【社媒营销】Facebook速推帖子如何运作?值得吗?
QWidget、QPushButton、









