知识大全 mysql性能的检查和调优方法[2]
Posted 索引
篇首语:常说口里顺,常做手不笨。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 mysql性能的检查和调优方法[2]相关的知识,希望对你有一定的参考价值。
row in set ( sec)
注意key rows和Extra这三项 这条语句返回的结果说明了该sql会使用PRIMARY主键索引来查询 结果集数量为 条 Extra没有显示 证明没有用到排序或其他操作 由此结果可以推断 mysql会从索引中查询imgid= 这条记录 然后再到真实表中取出所有字段 是很简单的操作 key是指明当前sql会使用的索引 mysql执行一条简单语句时只能使用到一条索引 注意这个限制 rows是返回的结果集大小 结果集就是使用该索引进行一次搜索的所有匹配结果 Extra一般会显示查询和排序的方式 如果没有使用到key 或者rows很大而用到了filesort排序 一般都会影响到效率 例如
mysql> desc select * from imgs where userid= mini order by clicks desc limit ;
row in set ( sec)
这条sql结果集会有 条 用到了filesort 所以执行起来会非常消耗效率的 这时mysql执行时会把整个表扫描一遍 一条一条去找到匹配userid= mini 的记录 然后还要对这些记录的clicks进行一次排序 效率可想而知 真实执行时如果发现还比较快的话 那是因为服务器内存还足够将 条比较短小的记录全部读入内存 所以还比较快 但是并发多起来或者表大起来的话 效率问题就严重了 这时我把userid加入索引 create index userid on imgs (userid);然后再检查
mysql> desc select * from imgs where userid= mini order by clicks desc limit ;
row in set ( sec)
cha138/Article/program/MySQL/201311/29772相关参考
我一直是使用mysql这个数据库软件它工作比较稳定效率也很高在遇到严重性能问题时一般都有这么几种可能 索引没有建好 sql写法过于复杂 配置错误 机器实在负荷不了 索引没有建好 如果看
我一直是使用mysql这个数据库软件它工作比较稳定效率也很高在遇到严重性能问题时一般都有这么几种可能 索引没有建好 &n
这时可以看到结果集还是条但是Extra中的filesort不见了这时mysql使用userid_clicks这个索引去查询这不但能快速查询到userid=admin
机器实在负荷不了 如果做了以上调整服务器还是不能承受那就只能通过架构级调整来优化了 mysql同
嗯这时可以看到mysql使用了userid这个索引搜索了用userid索引一次搜索后结果集有条然后虽然使用了filesort一条一条排序但是因为结果集只有区区条效率
MySQL性能调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  
Java的垃圾回收机制详解和调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JVM的gc概述
Hibernate性能调优[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Hibernat
Hibernate性能调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! inverse=?
Hibernate性能调优[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! inverse=