1. profiling之性能分析

MySQL5.0.37版本以上支持了Profiling – 官方手册。此工具可用来查询 SQL 会执行多少时间,System lock和Table lock 花多少时间等等,对定位一条语句的 I/O消耗和CPU消耗 非常重要。
查看profiling;
  select @@profiling;
启动profiling:
set @@profiling=1
关闭profiling :
set @@profiling=0;
  sql语句;
1.查看profile记录
show profiles;

Duration:我需要时间;

query:执行的sql语句;

2.查看详情:

show profile for query 2;

3.查看cup和io情况

show profile cpu,block io for query 2;

 

 2.explain 分析

1.id:一组数字,操作顺序,如果id相同,则执行顺序由上至下,如果是子查询,id的序号递增,值越大优先级越高,越先被执行;

2.select_type:表示每个字句的类型,简单还是复杂,取值如下;

  a>simple :简单查询,无子查询或union等;

  b>primary:查询中若包含复杂的子部分,最外层则被标记为primary;

  c>subquery:在select或where中若包含子查询,则该子查询被标记为subquery;

  d>derived:from中包含子查询,被标记为derived;

  e>union:若select出现在union之后,则被标记为union;

  f>union result:从union表中获取结果的select将被标记为union result;

3.table 查询的数据库表名称

4.type 联合查询使用的类型

  all :全表扫描

  index:全表扫描,只是扫描表的时候按照索引次序 进行而不是行。主要优点就是避免了排序, 但是开销仍然非常大。

  range:索引范围扫描

  ref:非唯一性索引扫描,交返回匹配单独值的所有行,常见于使用非唯一性索引或唯一性索引的非唯一前缀进行的查找。

  eq_ref:唯一性索引扫描

  const、system:当mysql对查询的某部分进行优化,并转换为一个常量时。如将主键置于where列表中,mysql就能将该查询转换为一个常量。system是const的特例,当查询的表只有一行的情况下,即可使用system。

5. possible_keys: 指出mysql能使用哪个索引在表中找到行,查询涉及的字段上若存在索引,则该索引将被列出。如果为空,说明没有可用的索引

6.key:使用到了哪个索引,这里列出的是实际使用到的索引,若没有使用索引,则显示为null。

7.key_len:使用的索引的长度。在不损失精确性的情况 下,长度越短越好。

8.ref:显示索引的哪一列被使用了

9.rows:MYSQL 认为必须检查的用来返回请求数据的行数.找到所需记录,需要读取的行数,越少越好

10.Extra:不适合在其他列显示,但却十分重要的信息,常见的有如下值:
  a) Using index:使用了索引检索。
  b) where used:使用了where限制,但是用索引还不够。
  c) Using temporary:需要使用临时表来存储结果集,常见于排序和分组查询。性能差。
  d) Using filesoft:使用了文件排序,性能差。

参考资料:http://www.cnblogs.com/sybblogs/p/7999353.html

     http://blog.csdn.net/asia_kobe/article/details/78683482

mysql性能分析-------profiling和explain的更多相关文章

  1. MySQL性能分析及explain的使用

    MySQL性能分析及explain用法的知识 1.使用explain语句去查看分析结果 如explain select * from test1 where id=1;会出现:id  selectty ...

  2. MySQL性能分析及explain的使用说明

    1.使用explain语句去查看分析结果 如explain select * from test1 where id=1;会出现:id selecttype table type possible_k ...

  3. MySQL性能分析, mysql explain执行计划详解

    MySQL性能分析 MySQL性能分析及explain用法的知识是本文我们主要要介绍的内容,接下来就让我们通过一些实际的例子来介绍这一过程,希望能够对您有所帮助. 1.使用explain语句去查看分析 ...

  4. mysql性能分析show profile/show profiles

    MySQL性能分析show profiles show profile 和 show profiles 语句可以展示当前会话(退出session后,profiling重置为0) 中执行语句的资源使用情 ...

  5. MySQL性能分析和优化-part 1

    MySQL性能优化 平时我们在使用MySQL的时候,怎么评估系统的运行状态,怎么快速定位系统瓶颈,又如何快速解决问题呢? 本文总结了多年来MySQL优化的经验,系统介绍MySQL优化的方法. OS性能 ...

  6. mysql 性能分析及explain用法

    转载自http://blog.sina.com.cn/s/blog_4586764e0100o9s1.html 使用explain语句去查看分析结果 如   explain select * from ...

  7. MySQL索引,MySQL性能分析及explain的使用,分析SQL查询性能

    可以使用explain来分析MySQL查询性能,举例如下: 1.使用explain语句去查看分析结果 如 explain select * from test1 where id=1; 会出现: id ...

  8. mysql性能分析工具

    一.EXPALIN 在SQL语句之前加上EXPLAIN关键字就可以获取这条SQL语句执行的计划 那么返回的这些字段是什么呢? 我们先关心一下比较重要的几个字段: 1. select_type 查询类型 ...

  9. MySQL性能分析(转)

    第一步:检查系统的状态 通过操作系统的一些工具检查系统的状态,比如CPU.内存.交换.磁盘的利用率.IO.网络,根据经验或与系统正常时的状态相比对,有时系统表面上看起来看空闲,这也可能不是一个正常的状 ...

随机推荐

  1. sass的颜色函数

    sass中有些非常实用的颜色处理函数,总结如下 1.颜色加深或变浅 lighten($color,$amount) //颜色变浅 darken($color,$amount) //颜色加深 例如: l ...

  2. Linux系统通过AWS命令行上传文件至S3

    打开你的AWS控制台: 在IAM中创建一个新用户(比如test),创建时它会自动创建一个用户安全凭证,是由“访问密钥ID”和“私有访问密钥”组成的,请记住它并下载该凭证,后面会用到它: 选择你刚创建的 ...

  3. 解密百度图片URL

    今天想爬百度图片搜索,但因为爬出来的链接乱七八糟,有些打不开,对于我这个完美主义者而言,这实在是太残酷,但我还是把爬虫过程的核心部分——解密URL给记录下来了. 下图是捕获的json数据的其中一条数据 ...

  4. POJ3974:Palindrome(Manacher模板)

    Palindrome Time Limit: 15000MS   Memory Limit: 65536K Total Submissions: 14021   Accepted: 5374 题目链接 ...

  5. ACM1004 Let the balloons fly

    These code is for the problem "Let the balloons Fly" in ACM 1004 which need deal with stri ...

  6. POJ 1014 / HDU 1059 Dividing 多重背包+二进制分解

    Problem Description Marsha and Bill own a collection of marbles. They want to split the collection a ...

  7. 招人不是HR第一职责,留住人才是

    什么是HR的第一责任?我希望你们知道,招人不是你的第一职责,留住人才是你的第一职责.HR工作是相当难做的,你们是公司集团内里各个部门中最难做的部门,也是最具战略性的部门. 以人为本,这个“人”就是阿里 ...

  8. 【BZOJ3875】【AHOI2014】骑士游戏 [Spfa][DP]

    骑士游戏 Time Limit: 30 Sec  Memory Limit: 256 MB[Submit][Status][Discuss] Description 在这个游戏中,JYY一共有两种攻击 ...

  9. 省队集训 Day6 序列

    [题目大意] 给出$n$个数的序列$a_1, a_2, ..., a_n$,有$m$次操作,为下面三种: $A~l~r~d$:区间$[l,r]$,全部加$d$. $M~l~r~d$:区间$[l,r]$ ...

  10. 【BZOJ】1666 [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏

    [算法]贪心&&堆 [题解]反过来看就是合并任意两块木板,花费为木板长度之和. 显然从最小的两块开始合并即可,用堆(优先队列)维护. 经典DP问题石子归并是只能合并相邻两堆石子,所以不 ...