mysql 最大执行时间_MySQL 的性能-SQL 执行分析---执行时间分析_寂寂若离的博客-CSDN博客


本站和网页 https://blog.csdn.net/weixin_33494995/article/details/113197538 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

mysql 最大执行时间_MySQL 的性能-SQL 执行分析---执行时间分析_寂寂若离的博客-CSDN博客
mysql 最大执行时间_MySQL 的性能-SQL 执行分析---执行时间分析
寂寂若离
于 2021-01-19 03:21:01 发布
593
收藏
文章标签:
mysql 最大执行时间
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_33494995/article/details/113197538
版权
Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后。
Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。通常我们是使用的explain,以及slow query log都无法做到精确分析,
但是Query Profiler却可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等,以及该SQL执行所耗费的时间等。
1.查看数据库版本方法:show variables like "%version%";  或者  select version();
2.确定支持show profile 后,查看profile是否开启,数据库默认是不开启的。变量profiling是用户变量,每次都得重新启用。
查看方法: select @@profiling   # 0 代表还是关闭着分析功能,  1 代表开启
或者使用查看命令: show variables like "%pro%" ;
开启profiling : set profiling = 1;
再次查看show variables like "%pro%"; 已经是开启的状态了。
3.可以开始执行一些想要分析的sql语句了,执行完后,show profiles;即可查看所有sql的总的执行时间。
语法:show profile for query Query_ID
例:
show profile for query 1
以上具体的信息都是从 INFORMATION_SCHEMA.PROFILING 这张表中取得的。这张表记录了所有的各个步骤的执行时间及相关信息。
语法:  mysql> select * from INFORMATION_SCHEMA.PROFILING where query_id = Query_ID;
mysql> show profile cpu, block io, memory,swaps,context switches,source for query 6;   #可以查看出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等
mysql> show profile all for query 6 查看第6条语句的所有的执行信息。
测试完毕后,关闭参数:
mysql> set profiling=0
方法二: timestampdiff来查看执行时间。
这种方法有一点要注意,就是三条sql语句要尽量连一起执行,不然误差太大,根本不准
set @d=now();
select * from comment;
select timestampdiff(second,@d,now());
如果是用命令行来执行的话,有一点要注意,就是在select timestampdiff(second,@d,now());后面,一定要多copy一个空行,不然最后一个sql要你自己按回车执行,这样就不准了。
3.慢查询日志
MySQL 的慢查询日志,顾名思义就是把执行时间超过设定值(默认为10s)的 SQL 记录到日志中。这项功能需要手动开启,但是开启后会造成一定的性能损耗。
3.1 查看慢日志是否开启
默认情况下slow_query_log的值为OFF,表示慢查询日志是禁用的,可以通过设置slow_query_log的值来开启。语法:set global slow_query_log=1
mysql> show variables like '%slow_query_log%';
+---------------------+------------------------------------------------------+
| Variable_name | Value |
+---------------------+------------------------------------------------------+
| slow_query_log | OFF |
| slow_query_log_file | /usr/local/var/mysql/xueweihandeMacBook-Air-slow.log |
+---------------------+------------------------------------------------------+
2 rows in set (0.11 sec)
mysql> set global slow_query_log=1;
Query OK, 0 rows affected (0.03 sec)
mysql> show variables like '%slow_query_log%';
+---------------------+------------------------------------------------------+
| Variable_name | Value |
+---------------------+------------------------------------------------------+
| slow_query_log | ON |
| slow_query_log_file | /usr/local/var/mysql/xueweihandeMacBook-Air-slow.log |
+---------------------+------------------------------------------------------+
3.2 设置超时时间
设置语法:set global long_query_time=4
查看语法:show variables like ‘long_query_time’
注意:修改后,需要重新连接或新开一个会话才能看到修改值。
永久生效,修改 my.cnf
slow_query_log=1
long_query_time=10
slow_query_log_file=/path/mysql_slow.log
3.3 其他参数
3.3.1 log_output
参数是指定日志的存储方式。log_output=‘FILE’表示将日志存入文件,默认值是’FILE’。log_output='TABLE’表示将日志存入数据库,这样日志信息就会被写入到mysql.slow_log表中。MySQL数据库支持同时两种日志存储方式,配置的时候以逗号隔开即可,如:log_output=‘FILE,TABLE’。日志记录到系统的专用日志表中,要比记录到文件耗费更多的系统资源,因此对于需要启用慢查询日志,又需要能够获得更高的系统性能,那么建议优先记录到文件。
3.3.2 log-queries-not-using-indexes
未使用索引的查询也被记录到慢查询日志中(可选项)。如果调优的话,建议开启这个选项。另外,开启了这个参数,其实使用full index scan的sql也会被记录到慢查询日志。
3.3.3 log_slow_admin_statements
表示是否将慢管理语句例如ANALYZE TABLE和ALTER TABLE等记入慢查询日志
3.4 分析工具 mysqldumpslow
MySQL 提供了慢日志分析工具 mysqldumpslow。
-s 表示按照何种方式排序;
c: 访问计数
l: 锁定时间
r: 返回记录
t: 查询时间
al:平均锁定时间
ar:平均返回记录数
at:平均查询时间
-t 是top n的意思,即为返回前面多少条的数据;
-g 后边可以写一个正则匹配模式,大小写不敏感的;
3.4.1 命令示例
得到返回记录集最多的 10 个 SQL:mysqldumpslow -s r -t 10 /database/mysql/mysql06_slow.log
得到访问次数最多的 10 个 SQL:mysqldumpslow -s c -t 10 /database/mysql/mysql06_slow.log
得到按照时间排序的前10条里面含有左连接的查询语句:mysqldumpslow -s t -t 10 -g “left join” /database/mysql/mysql06_slow.log
另外建议在使用这些命令时结合 | 和 more 使用 ,否则有可能出现刷屏的情况:mysqldumpslow -s r -t 20 /mysqldata/mysql/mysql06-slow.log | more
寂寂若离
关注
关注
点赞
收藏
打赏
评论
mysql 最大执行时间_MySQL 的性能-SQL 执行分析---执行时间分析
Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后。Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。通常我们是使用的explain,以及slow query log都无法做到精确分析,但是Query Profiler却可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU...
复制链接
扫一扫
慢查询导致mysql卡死,设置mysql 最大sql最大执行时间max_execution_time
shenxiaomo1688的博客
01-18
2734
https://blog.csdn.net/selectdb/article/details/82286812
https://www.cnblogs.com/songxuan/p/9469098.html
1.max_execution_time
mysql5.6可以使用pt-kill
https://www.percona.com/doc/percona-toolkit/LATEST/pt-kill.html
mysql 5.6 及以后,有语句执行超时时间变量,用于在服务端对 select 语句进行
Java如何动态实现修改cron表达式
最新发布
zyh201314zyh的博客
02-06
19
3、现象就是一开始相隔5s打印一次时间,后面触发接口后,变为相隔10s打印一次时间。1、主启动类标注@EnableScheduling注解。
参与评论
您还未登录,请先
登录
后发表或查看评论
分享一个常用的sql语句--实时查找超过10秒的sql 值得收藏!
Hello World
05-19
948
概述
很多时候我们会发现系统突然莫名其妙的卡顿,一般根源都是sql方面的问题,这个时候如果想知道系统是由哪条sql引起卡顿的,可以怎么处理呢?下面分享一个实时去查超过10s的sql。
实时查找超过10秒的sql
SELECT 'kill -9 '||p.spid,/*p.spid,p.pid,*/s.sid,s.username,s.machine,s.sql_hash_value,s.l...
mysql最大执行时间_PHP的MySQL的最大执行时间超过300秒_fatal错误
weixin_39522927的博客
02-28
273
我正在从数据库中查询数据,并且查询子句随日期而变化。换句话说,我想通过以unix时间戳记秒数来获取一日数据。因此,我为一日查询所做的是SELECT IDnum, Timestamp FROM table_nameWHERE CONVERT(Timestamp, UNSIGNED INTEGER) >= ($start_tim-86400*($i+1))AND CONVERT(Timestam...
执行计划常用参数简析
HighGO
01-19
662
1、ANALYZE
真正执行实际的SQL,看到执行计划每一步时间
2、VERBOSE
用于显式计划的附加信息,附加信息:计划树中每个节点输出的各个列。触发器被出发还会显示出发器的名称。默认为FALSE。
3、COSTS
每个计划节点的启动成本和总成本、行数、每行宽度。Costs 默认为TRUE
4、BUFFERS
缓冲区使用的信息,只能与anaylyze参数一起使用,共享块、本地块、临
Mysql调优及索引锁机制学习
qq_44193036的博客
07-29
470
Mysql
存储引擎简介
查看存储引擎
在mysql中,我们可以使用以下两个命令来查看当前使用和mysql默认支持的存储引擎。
show engines;
show variables like ‘%storage_engine%’;
可以看到Mysql一共支持非常多的存储引擎,目前主流的存储引擎就是InnoDB和MyIsam两种,实际上,5.5版本之后的mysql默认支持的存储引擎就是InnoDB。
MyIsam和InnoDB的区别
对比项
InnoDB
MyIsam
主外键
支持
MySQL- SQL执行计划 & 统计SQL执行每阶段的耗时
小工匠
02-02
6003
文章目录官方文档某些SQL查询为什么慢MySQL处理SQL请求的过程查询缓存对SQL性能的影响SQL预处理及生成执行计划造成MySQL生成错误的执行计划的原因
官方文档
https://dev.mysql.com/doc/
如果英文不好的话,可以参考 searchdoc 翻译的中文版本
http://www.searchdoc.cn/rdbms/mysql/dev.mysql.com/do...
Mysql中如何查看Sql语句的执行时间(建议多准备点初始数据效果更佳)
程序员小王的博客
12-13
8119
Mysql中如何查看Sql语句的执行效率
【mysql】【12】慢查询导致mysql卡死,设置mysql 最大sql最大执行时间max_execution_time
huiyanshizhen21的博客
05-19
5765
参考文档
https://blog.csdn.net/selectdb/article/details/82286812
https://www.cnblogs.com/songxuan/p/9469098.html
1.max_execution_time
mysql 5.6 及以后,有语句执行超时时间变量,用于在服务端对 select 语句进行超时时间限制;
mysql 5.6 中,名为: max_statement_time (毫秒)
mysql 5.7 以后,改成: max_execution_ti
MySQL配置记录SQL执行时间长的语句
1252661442的博客
03-12
1240
在MySQL执行中,时间超过了指定时间的SQL操作就称之为慢查询或慢速查询(实质包括增删改改查等等)。
查看该参数变量的信息:
show variables like 'long_query_time';
[mysqld]
#设置查询时间大于等于1秒就记录
long_query_time=1
#5.0、5.1等版本配置:
log-slow-queries="mysql_query.log...
实现对外接口,要注意哪些问题
CRMEB小程序商城的博客
09-27
1036
做接口需要考虑的问题
什么是接口
接口无非就是客户端请求你的接口地址,并传入一堆该接口定义好的参数,通过接口自身的逻辑处理,返回接口约定好的数据以及相应的数据格式。
接口怎么开发
接口由于本身的性质,由于和合作方对接数据,所以有以下几点需要在开发的时候注意:
1、定义接口入参:写好接口文档
2、定义接口返回数据类型:一般都需要封装成一定格式,确定返回json还是xml报文等
见如下返回数据定义格式:
Result
Response
3、确定访问接口的方式,get or post等等,可以根据restf
mysql 单sql最大时间_MySQL系列分析Sql执行时间及查询执行计划(附数据库和一千万数据)...
weixin_28852151的博客
02-01
646
北京时间周一晚9点28分,文章走起。写给自己看的,总结下学习知识,梳理下知识点。Netty系列文章先告一段落了,因为这些知识已经满足我当前工作的需求。后续项目中遇到问题和问题解决,会继续更新Netty相关文章。哈哈哈 啰嗦的话有点多。接下来我将更新MySQL系列的文章,主要涉及MySQL的索引、调优、整体架构、引擎、分库分表、扩容、索引的深入探究等等。感兴趣的可以持续关注,不感兴趣的略过...
【SQL高级优化】——第五章慢查询日志开启及使用
tangdaren2的博客
07-20
100
一、开启慢日志
在my.ini中配置开启慢日志,查询超过10s的语句都记录到日志中。
##设置慢查询日志
slow-query_log=1
long_query_time=10
二、重启服务
重启服务后,在日志输出目录多出一个DL17238708A005-slow.log文件
三、测试验证
在查询对话框中,键入一个查询语句,可以看到这个查询语句查询时间大于10s。
select * from test;
打开慢查询日志,可以看到如下记录
C:\Program F...
mysql数据库调优知识复习
小蜜蜂1010的博客
02-28
430
mysql数据库调优基本上是面试必问的,不过平时工作中用的还是有点偏少,容易忘记,还是记录一下,时常可以看看,今天时间不充足了,暂且写一点,然后在不断补充
1.慢查询优化
mysql语句执行超时设置
热门推荐
Sarah Cla的专栏
09-20
3万+
mysql 语句超时时间设置
如何将Oracle 当前日期加一天、一分钟
lightningmn的博客
09-24
440
转载地址:https://blog.csdn.net/HyEidolon/article/details/8290724?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allbaidu_landing_v2~default-1-8290724.nonecase&utm_term=oracle%20%E6%97%B6%E9%97%B4+2%E5%B0%8F%E6%97%B6
在Oralce中我发现有add_months函数
mysql设置单个查询语句的最长执行时间,防止慢查询
gac0540的博客
05-18
193
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录查了很多地方,都答案都不对,去mysql官方网站上翻了翻,找到了正确答案。不过只在mysql 8上验证了,其他版本不确定。
查了很多地方,都答案都不对,去mysql官方网站上翻了翻,找到了正确答案。不过只在mysql 8上验证了,其他版本不确定。
比如某表A,正常写法
select * from A;
限制时间写法,限制500毫秒内结束
select /*+ MAX_EXECUTION_TIME(500) */ * from .
mysql最大执行时间_导入大型MySQL数据库时,最大执行时间超过300秒
weixin_42355399的博客
01-19
384
我正在尝试使用命令导入641 MBMySQL数据库:mysql -u root -p ddamiane_fakty < domenyin_damian_fakty.sql但是我收到了一个错误:ERROR 1064 (42000) at line 2351406: You have an error in your SQL syntax; check the manual that corre...
mysql 限制sql执行时间
weixin_33727510的博客
10-16
883
mysql 5.7.8开始
max_execution_time applies to read-only SELECT statements.
mysql> show variables like 'max_execution_time';
+--------------------+-------+| Variable_name | Value |+-...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:数字20
设计师:CSDN官方博客
返回首页
寂寂若离
CSDN认证博客专家
CSDN认证企业博客
码龄5年
暂无认证
78
原创
周排名
61万+
总排名
12万+
访问
等级
53
积分
粉丝
21
获赞
评论
137
收藏
私信
关注
热门文章
linux 自带的make 命令,详解Linux下make命令的使用
14598
雷蛇雷云3无法连接服务器,雷蛇驱动安装无法访问服务器怎么办
12428
前端连接websocket失败_SpringBoot项目中websocket报错问题
8031
网络发现不了其他计算机,win10网络发现不了其他电脑怎么办_win10网络里找不到其他电脑如何处理...
6654
h3c交换机 查看二层交换机端口ip_由浅入深学习网络设备模拟器HCL 第二篇 交换机的基本配置...
4471
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
paintkeep未能连接到服务器,Paintkeep
梦幻西游藏宝阁不显示服务器,玩转梦幻西游藏宝阁全服搜索功能体验
守望先锋四服务器修改,服务器刷新率提高 《守望先锋》终于不用死在墙角了...
2021年143篇
2020年16篇
目录
目录
最新文章
paintkeep未能连接到服务器,Paintkeep
梦幻西游藏宝阁不显示服务器,玩转梦幻西游藏宝阁全服搜索功能体验
守望先锋四服务器修改,服务器刷新率提高 《守望先锋》终于不用死在墙角了...
2021年143篇
2020年16篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
寂寂若离
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值