mysql解析运行时间_分析 MySQL 语句运行时间
为了验证select 1 与 select 1 from tableName 与 select * from tableName的执行效率,需要测试一下各自执行的时间。于是总结一下,查看mysql语句运行时间的方法。
1. show profiles。
mysql 版本
Query Profiler是MYSQL自带的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。通常我们是使用的explain,以及slow query log都无法做到精确分析,Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后。
但是Query Profiler却可以定位出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等,以及该SQL执行所耗费的时间等。
查看数据库版本方法:show variables like “%version%”; 或者 select version();
开启 show profile
确定支持show profile 后,查看profile是否开启,数据库默认是不开启的。变量profiling是用户变量,每次都得重新启用。
查看方法: show variables like “%pro%”;
设置开启方法: set profiling = 1;
再次查看show variables like “%pro%”; 已经是开启的状态了。
执行
可以开始执行一些想要分析的sql语句了,执行完后,show profiles;即可查看所有sql的总的执行时间。
mysql> show profiles;
±---------±-----------±-----------------------+
| Query_ID | Duration | Query |
±---------±-----------±-----------------------+
| 1 | 0.00054775 | show tables |
| 2 | 0.00022400 | select * from aa |
| 3 | 0.00026275 | update aa set name=‘d’ |
| 4 | 0.00043000 | delete from bb |
±---------±-----------±-----------------------+
4 rows in set (0.00 sec)
show profile for query 1 即可查看第1个sql语句的执行的各个操作的耗时详情。
show profile cpu, block io, memory,swaps,context switches,source for query 6;可以查看出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等
show profile all for query 6 查看第6条语句的所有的执行信息。
测试完毕后,关闭参数:set profiling=0
2. timestampdiff来查看执行时间。
这种方法有一点要注意,就是三条sql语句要尽量连一起执行,不然误差太大,根本不准
set @d=now();
select * from comment;
select timestampdiff(second,@d,now());
如果是用命令行来执行的话,有一点要注意,就是在select timestampdiff(second,@d,now());后面,一定要多copy一个空行,不然最后一个sql要你自己按回车执行,这样就不准了。
mysql解析运行时间_分析 MySQL 语句运行时间相关推荐
- mysql distinct 慢_分析MySQL中优化distinct的技巧
有这样的一个需求:select count(distinct nick) from user_access_xx_xx; 这条sql用于统计用户访问的uv,由于单表的数据量在10G以上,即使在user ...
- mysql授权许可_分析MySQL的授权许可
MySQL是开源软件,但开源不意味着免费,开源软件的使用应遵循该软件提供的使用授权许可.MySQL的授权许可是英文的,而且一直以来没有权威的中文译本,所以很多人都不清楚其中的细节. 最近我在做一些AS ...
- python输出运行时间_分析python程序运行时间的几种方法
最早见过手写的,类似于下面这种: 1 import datetime 2 3 def time_1(): 4 begin = datetime.datetime.now() 5 sum = 0 6 f ...
- MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结
MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结 一.VARCHAR存储和行长度限制 1.VARCHAR(N)中,N指的是字符的长度,VARCHAR类型最大支持65535,指的是 ...
- mysql 执行概况_转mysql源码分析之SQL执行过程简介
本人打算从SQL语句的执行开始学习和分析MYSQL源码,首先了解MYSQL是如何执行一条SQL语句的,详细了解它的执行过程之后,再深入学习执行一条SQL语句的运行原理. 1)从执行一条SQL语句的堆栈 ...
- mysql not exists无效_分析MySQL中哪些情况下数据库索引会失效
要想分析MySQL查询语句中的相关信息,如是全表查询还是部分查询,就要用到explain. 一.explain 用法:explain +查询语句. id:查询语句的序列号,上面图片中只有一个selec ...
- strace 分析mysql 内存占用_关于mysql cluster适用场景的分析
前言: mysql cluster作为mysql官方的一个集群软件,一直是不温不火的存在,用的较多的仍是mysql-server,本文就基于mysql cluster的特性,分析一下什么场景下适合使用 ...
- mysql float字节长度_分析MySQL数据类型的长度
分析MySQL数据类型的长度 MySQL有几种数据类型可以限制类型的"长度",有CHAR(Length).VARCHAR(Length).TINYINT(Length). SMAL ...
- mysql多大_洞悉MySQL底层架构:游走在缓冲与磁盘之间
提起MySQL,其实网上已经有一大把教程了,为什么我还要写这篇文章呢,大概是因为网上很多网站都是比较零散,而且描述不够直观,不能系统对MySQL相关知识有一个系统的学习,导致不能形成知识体系.为此我撰 ...
最新文章
- transformer面试总结 模型中BN batchNormalize LN layerNormalizer区别
- Web应用安全审计工具WATOBO
- 故障排错-解决迅雷播放器在Windows 10中长时间停止响应
- 为新手准备的 Codea 着色器(Shader)教程
- 使用数值计算库Zero - VC6调用失败、cfree调用成功
- k8s部署nfs-client-provisioner完整实践版(亲测有效)
- Lamda和kappa架构
- Dubbo服务导出原理
- cmd查看开放的端口
- 支付宝小程序日期选择组件datePicker封装
- windows10-seaslog安装笔记
- 计算机无线网络连接怎么弄,Win7系统如何设置无线网络连接?
- 渗透测试工具——BurpSuite
- 龙芯2k1000-pmon(7)- pmon版本控制
- PowerApps初体验,低代码快速搭建一套五一休假报备管理系统(一)
- Word美化技巧:Word文档怎么设置背景图片?
- 词霸天下---140 词根 【-us- = -uti(l)- = -ut- 使用 】
- python pandas数据清洗:sample()函数
- [NOIP初赛复习]插空法与插板法解排列组合问题
- 虚幻4渲染编程(环境模拟篇)【第五卷:可交互物理植被模拟 - 上】
热门文章
- LightGBM是什么?相对于xgboost有什么优势?如何使用randomSearchCV和lightgbm进行组合获取最优参数组合?
- php统计键出现的次数,php统计数组元素出现的次数
- go语言之旅 (一)
- 数字图像处理7:图像增强之灰度变换
- 战锤全面战争无法响应服务器,战锤:全面战争打不开 游戏无法启动解决办法...
- 如何学习修改linux系统固件,基于Linux的固件,如何实现更新的好方法?
- # 关闭 window10自带广告 microsoft star
- 4.二叉树的先序、中序以及后序遍历的递归写法与非递归写法(LeetCode第94、144、145题)
- [转载]Python爬取豆瓣影评并生成词云图代码
- rocksdb报错解决:librocksdb.a(format.o): In function `Zlib_Uncompress':