sql性能分析分析和总结.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

mysqlprofileexplainslow_query_log分析优化查询

在做性能测试中经常会遇到一些

在做性能测试中经常会遇到一些sql的问题,其实做性能测试这几年遇到问题最多还是数据库这块,要么就是IO高要么就是

cpu高,所以对数据的优化在性能测试过程中占据着很重要的地方,下面我就介绍一些msyql性能调优过程中经常用到的三件利器:

3、Profile(查询到SQL会执行多少时间,并看出CPU/Memory

3、Profile(查询到SQL会执行多少时间,并看出CPU/Memory使用量,执行过程中Systemlock,Tablelock花多少时

1、慢查询(分析出现出问题的sql)

间等等.)

首先我们先讲一讲mysql的慢查询

1,配置开启Linux:

log-slow-queries=/var/lib/mysql/slowquery.log(指定日志文件存放位置,可以为空,系统会给一个缺省的文件在mysql配置文件my.cnf

log-slow-queries=/var/lib/mysql/slowquery.log(指定日志文件存放位置,可以为空,系统会给一个缺省的文件

host_name-slow.log)

log-queries-not-using-indexes(log下来没有使用索引的query,可以根据情况决定是否开启)long_query_time=2(

log-queries-not-using-indexes(log下来没有使用索引的query,可以根据情况决定是否开启)

log-long-format(如果设置了,所有没有使用索引的查询也将被记录)Windows:

在my.ini的[mysqld]添加如下语句:

log-slow-queries=E:\web\mysql\log\mysqlslowquery.log

log-slow-queries=E:\web\mysql\log\mysqlslowquery.log

long_query_time

long_query_time=2(其他参数如上)

2,

2,查看方式

Linux:

Linux:

常用命令使用mysql自带命令mysqldumpslow查看

常用命令

-s

-sORDERwhattosortby(t,at,l,al,r,aretc),at’isdefault

-gPATTERN

-gPATTERNgrep:onlyconsiderstmtsthatincludethisstring

eg:

eg:

s

s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有c,t,l,r和ac,at,al,ar,分别是按照query次数,

可以写一个正则匹配模式,大小写不敏感的时间,lock的时间和返回的记录数来排序,前面加了a的时倒序-t,是topn的意思,即为返回前面多少条的数据-g,后边

可以写一个正则匹配模式,大小写不敏感的

mysqldumpslow

mysqldumpslow-sc-t20host-slow.log

mysqldumpslow

mysqldumpslow-sr-t20host-slow.log

上述命令可以看出访问次数最多的

上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。

mysqldumpslow-t10-st-g“leftjoin”host-slow.log这个是按照时间返回前10条里面含有左连接的sql语句。

接下来就是explain

使用方法:

使用方法:

执行EXPLAINSELECT*FROMres_userORDERBYmodifiedtimeLIMIT0,1000得到如下结果:

显示结果分析:

显示结果分析:

table|type|possible_keys|key|key_len|ref|rows|Extra

table|type|possible_keys|key|key_len|ref|rows|Extra

EXPLAIN

EXPLAIN列的解释:

table

table

显示这一行的数据是关于哪张表的

显示这一行的数据是关于哪张表的

type

type

这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg、ref、range、indexhe和ALLpossib

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档