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. 【POJ3621】【洛谷2868】Sightseeing Cows(分数规划)

    [POJ3621][洛谷2868]Sightseeing Cows(分数规划) 题面 Vjudge 洛谷 大意: 在有向图图中选出一个环,使得这个环的点权\(/\)边权最大 题解 分数规划 二分答案之 ...

  2. POJ3254:Corn Fields——题解

    http://poj.org/problem?id=3254 题面来自洛谷:https://www.luogu.org/problemnew/show/1879 农场主John新买了一块长方形的新牧场 ...

  3. Hydra—密码爆破神器

    公司邮箱系统密码复杂度规则:字母大小写.数字.特殊字符,四选三,长度8位以上.这种复杂度的密码看着是比较安全的,但因历史原因,邮箱系统开放了外网登陆权限,加之公司人数众多,必然会有少量员工把自己的密码 ...

  4. exBSGS板子

    /*bzoj2480*/ #include <map> #include <cmath> #include <cstdio> #include <cstrin ...

  5. mysql定时器,定时查询数据库,把查询结果插入到一张表中

    1.有两张表order_repayment_detail,msg_sim ,需要把前者中的按时间过滤出来的信息插入到短信发送表中,可以每晚12点钟查询执行一次查询. 创建存储过程,这里的存储过程主要提 ...

  6. 项目压力测试软件 -- LoadRunner 11.0 的安装、汉化和破解

        重要说明:     LoadRunner 11.0 只支持Win7,32位系统:不支持Win7,64位系统[ Win7,64位 我反复安装都没有成功!] 一.下载安装.汉化.破解文件: 我的下 ...

  7. hdu 5625

    Clarke and chemistry Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Oth ...

  8. [python]爬站点

    #!/usr/bin/python 2 import urllib 3 import urllib2 4 import re 5 import os 6 7 dirs = ['js','img','p ...

  9. JVM之字节码执行引擎

    方法调用: 方法调用不同于方法执行,方法调用阶段唯一任务就是确定被调用方法的版本(即调用哪一个方法),暂时还不执行方法内部的具体过程.方法调用有,解析调用,分派调用(有静态分派,动态分派). 方法解析 ...

  10. 组合数学--约瑟夫环问题 Josephus

    约瑟夫斯问题(有时也称为约瑟夫斯置换),是一个出现在计算机科学和数学中的问题.在计算机编程的算法中,类似问题又称为约瑟夫环. 有n个囚犯站成一个圆圈,准备处决.首先从一个人开始,越过k-2个人(因为第 ...