Mysql优化--Show Profile
===============
是Mysql提供可以用来分析当前会话中语句执行的资源消耗情况。可以用于Sql的调优的测量。默认情况下处于关闭状态,并保存最近 15 次的运行结果。
查看功能是否开启:
SHOW VARIABLES LIKE '%profiling%'
如果关闭,则需要开启:
SET profiling = on;
1 准备数据
1.1 建表、函数、存储过程
执行 这篇(调用函数和存储过程批量插入数据) 文章的第 1-7 步,注意,不要执行第8步
1.2 插入数据
现在执行第8步
CALL insert_employee(100000000, 500000);
机器慢,跑的时候有点长;正好,用它来看看慢查询日志,也还是不错的,结果如下:
2 运行Sql
2.1 确保已开启 ShowProfile
SHOW VARIABLES LIKE '%profiling%'
2.2 执行Sql
SELECT * FROM employee e GROUP BY e.id%10;
Sql执行结果:
用 ShowProfile 查看一下:
SHOW PROFILES;
结果:
多执行几次Sql后再看效果:
3 ShowProfile分析
3.1 ShowProfile
用 ShowProfile 查看一下 SELECT * FROM employee e GROUP BY e.id%10 这条Sql的执行情况:
SHOW PROFILE cpu, block io FOR QUERY 3;
结果如下:
可以看到,创建临时表、拷贝数据、删除临时表均出现在了Sql生命周期内,且 Sending Data 就花费了 0.276851秒,这也是整个过程中耗时最长的部分。
3.2 日常开发中需要注意的地方
以下这些情况都很危险,如果出现,就一定需要注意了。
converting HEAP to MyISAM 查询结果太大,内存都不够用了,往磁盘上搬了
creating tmp talbe 创建临时表(拷贝数据到临时表,用完后删除)
copying to tmp table on disk 把内存中临时表复制到磁盘,危险
locked
Mysql优化--Show Profile的更多相关文章
- MySQL优化之profile
分析SQL执行带来的开销是优化SQL的重要手段.在MySQL数据库中,可以通过配置profiling参数来启用SQL剖析.该参数可以在全局和session级别来设置.对于全局级别则作用于整个MySQL ...
- MySQL优化聊两句
原文地址:http://www.cnblogs.com/verrion/p/mysql_optimised.html MySQL优化聊两句 MySQL不多介绍,今天聊两句该如何优化以及从哪些方面入手, ...
- PHP中的数据库一、MySQL优化策略综述
前些天看到一篇文章说到PHP的瓶颈很多情况下不在PHP自身,而在于数据库.我们都知道,PHP开发中,数据的增删改查是核心.为了提升PHP的运行效率,程序员不光需要写出逻辑清晰,效率很高的代码,还要能对 ...
- MySQL优化—工欲善其事,必先利其器之EXPLAIN(转)
最近慢慢接触MySQL,了解如何优化它也迫在眉睫了,话说工欲善其事,必先利其器.最近我就打算了解下几个优化MySQL中经常用到的工具.今天就简单介绍下EXPLAIN. 内容导航 id select_t ...
- MySQL优化—工欲善其事,必先利其器之EXPLAIN
最近慢慢接触MySQL,了解如何优化它也迫在眉睫了,话说工欲善其事,必先利其器.最近我就打算了解下几个优化MySQL中经常用到的工具.今天就简单介绍下EXPLAIN. 内容导航 id select_t ...
- Mysql优化相关总结
Mysql优化相关总结 2016-05-31 数据库集中营 优化顺序: 选择适当的引擎和表结构和数据类型 建立索引,优化sql. 增加缓存,redis.memcache. 主从.主主,读写分离. my ...
- mysql优化一之查询优化
这一篇笔记的mysql优化是注重于查询优化,根据mysql的执行情况,判断mysql什么时候需要优化,关于数据库开始阶段的数据库逻辑.物理结构的设计结构优化不是本文重点,下次再谈 查看mysql语句的 ...
- MySQL优化面试
原则:尽量使用整型表示字符串 存储IP INET_ATON(str),address to number INET_NTOA(number),number to address MySQL内部的枚举类 ...
- MySQL的show profile(已过时)简介以及该功能在MySQL 5.7中performance_schema中的替代
本文出处:http://www.cnblogs.com/wy123/p/6979499.html show profile 命令用于跟踪执行过的sql语句的资源消耗信息,可以帮助查看sql语句的执行情 ...
随机推荐
- 【转】optach学习
[转自:https://yq.aliyun.com/articles/28007,仅作学习用途] 摘要: Opatch 是oracle公司开发的安装,卸载,检测patch冲突的工具,管理oracle所 ...
- 微信小程序如何动态增删class类名
简述 由于微信小程序开发不同于以往的普通web开发, 因此无法通过js获取wxml文件的dom结构, 因此从js上直接添加一个类名应该不可能了. 可是我们可以通过微信小程序数据绑定以及view标签的& ...
- python 类的绑定方法和非绑定方法
一.绑定方法 1.对象的绑定方法 首先我们明确一个知识点,凡是类中的方法或函数,默认情况下都是绑定给对象使用的.下面,我们通过实例,来慢慢解析绑定方法的应用. class People: def __ ...
- 【原创】公司各个阶段 CTO 需要做什么?(上篇)
CTO 是企业内技术最高负责人,对企业的发展起到至关重要的作用.但随着公司的不断发展,CTO 的工作重心也会不断变化.只有在正确的阶段做正确的事,才能更好地为公司做出贡献.我是空中金融 CTO ,TG ...
- 关于tomcat和jetty的乱码问题
现象:windows 下的tomcat和jetty默认安装都有问题,linux下的没有问题. 分析:操作系统字符集发生作用了,程序有些处理可能使用了该默认字符集,导致两边现象不一致,建议排查,先尝试通 ...
- 【VB超简单入门】四、编译工程及传播程序文件
四.编译工程及传播程序文件 为什么在这一章中讲到编译这部分内容呢?因为当我们学会怎样用VB开发程序之后,内心肯定喜悦无比.这时候就要和朋友分享一下快乐,所以要先学习编译EXE程序文件. 首先新建工程. ...
- 南京邮电大学java程序设计作业在线编程第二次作业
王利国的"Java语言程序设计第2次作业(2018)"详细 作业结果详细 总分:100 选择题得分:60 1. 表达式9==8&&3<7的运算结果是( ) ...
- Windows Socket的UDP和TCP编程介绍
1:网络中进程之间如何通信 为了实现进程之间通信,首要解决的问题是如何唯一标识一个进程,在本地可以通过进程PID来唯一标识一个进程,但是在网络中则是行不通的,其实TCP/IP协议族已经帮我们解决了这个 ...
- MySQL/MariaDB触发器
本文目录:1.创建触发器2.insert触发器3.delete触发器4.update触发器5.通过on duplicate key update分析触发器触发原理6.replace to算法验证7.查 ...
- [机器学习Lesson4]多元线性回归
1. 多元线性回归定义 多元线性回归也被称为多元线性回归. 我们现在介绍方程的符号,我们可以有任意数量的输入变量. 这些多个特征的假设函数的多变量形式如下: hθ(x)=θ0+θ1x1+θ2x2+θ3 ...