Jquery中文网 www.jquerycn.cn
Jquery中文网 >  数据库  >  mysql  >  正文 mysql中使用limit时,explain带来的问题分析

mysql中使用limit时,explain带来的问题分析

发布时间:2015-12-14   编辑:www.jquerycn.cn
本文介绍下,在mysql中使用limit时,explain分析数据时的一些可能问题,供大家学习参考。

问题分析:
1,explain当估计行数时,不考虑limit,因此可能会对查询估计过多的检查行数。

2,类似于SELECT ... FROM TBL LIMIT N这样的全表扫描的查询因为用不到索引将要报告为慢查询,如果--log-queries-not-using-indexes被开启的话;
可以在配置文件中使用min-examined-row-limit=Num of Rows来设置,如果要检查的行数大于等于这个量的查询,才会被报告为慢查询。

有关mysql慢查询的内容,可以参考:
mysql打开慢查询日志的方法
有关 mysql 慢查询日志
mysql开启慢查询实例演练(图文)
mysql开启慢查询日志的方法
MySQL 5.1.6以上版本动态开启慢查询日志的方法
mysql 慢查询的原因分析点滴
学习开启mysql慢查询与分析查询语句
mysql开启慢查询以检查查询慢的语句

3,类似于这样形式的SELECT ... FROM TBL WHERE KEY_PART1=CONST ORDER BY KEY_PART2 LIMIT N,mysql也要估计出过多的检查行数。

有关slow-query的一些参数:
log-slow-queries -- 开启慢查询
long_query_time=N -- 大于N秒的查询为慢查询,并且要满足min-examined-row-limit的要求
log-queries-not-using-indexes  -- 记录不使用索引的为慢查询,并且要满足min-examined-row-limit的要求
min-examined-row-limit=N -- 要检查的行数大于等于N时才记录为慢查询,前提是必须满足long_query_time和log-queries-not-using-indexes约束

就介绍这些吧,希望对大家有所帮助。

您可能感兴趣的文章:
mysql中使用limit时,explain带来的问题分析
mysql中limit、order by和group by的用法实例解析
Mysql EXPLAIN显示using filesort
优化mysql的limit offset的例子
高效MySQL分页代码
mysql limit分页优化方法
mysql分页原理与mysql分页查询语句
学习mysql中的limit分页优化
mysql高效分页的实例分析
实例详解mysql limit大数据量分页优化的方法

[关闭]