接上一篇文章:

http://www.cnblogs.com/xiaoit/p/4430387.html

有时候会出现某字段建立一个索引,但是查看执行计划的时候发现还是全扫了表?

可以强制走下索引看看扫描了多少数据量:

EXPLAIN SELECT * FROM tab_index force index(idx2) WHERE age = 32;

然后比较 此次需要扫描的记录数与之前全表扫描的记录数,看百分比是多少???

如果走索引扫描的数据很多的话,可能优化器会认为效率没有全扫快。索引就没有走索引。
手册上提到一个比例:每个表的索引被查询,并且使用最好的索引,除非优化器认为使用表扫描更有效。是否使用扫描取决于是否最好的索引跨越超过30%的表。
优化器更加复杂,其估计基于其它因素,例如表大小、行数和I/O块大小,因此固定比例不再决定选择使用索引还是扫描。

可以参考下手册:

http://dev.mysql.com/doc/refman/5.1/en/optimization.html

最新文章

  1. 在Arcscene绘制管线三维横断面(AE绘制三维点阵文字)
  2. Mybatis缓存处理机制
  3. android 弹幕效果demo
  4. yii 主从数据库分离-转载http://www.yiichina.com/doc/guide/2.0/db-dao
  5. LD1-M(简单图的判定+构造,Havel定理)
  6. 【转】MUD教程--巫师入门教程2
  7. vs2015 安装问题汇总
  8. Transform 位置 旋转
  9. [转]solr DataImportHandler 解决mysql 表导入内存溢出问题
  10. SQL C# nvarchar类型转换为int类型 多表查询的问题,查询结果到新表,TXT数据读取到控件和数据库,生成在控件中的数据如何存到TXT文件中
  11. 兄弟连PHP培训教你提升效率的20个要点
  12. vue从入门到女装??:从零开始搭建后台管理系统(二)用vue-docute生成线上文档
  13. NB二人组(二)----归并排序
  14. parted 分区
  15. 计蒜客 Goldbach Miller_Rabin判别法(大素数判别法)
  16. python版GetTickCount()
  17. 一段javascript设计模式应用场景
  18. 0057 Spring MVC如何获取HTTP请求头信息--URL中的动态参数--@RequestHeader--@CookieValue--@PathVariable
  19. PAT 天梯赛 L1-036. A乘以B 【水】
  20. WPF 窗体在Alt+Tab中隐藏

热门文章

  1. iOS开发者帐号申请指南
  2. 使用Bootstrap 3开发响应式网站实践02,轮播
  3. .NET泛型04,使用Lazy<T>实现延迟加载
  4. 利用Spring MVC 上传图片文件
  5. 【centOS7】centOS7上普通用户切换root用户,相互切换
  6. [翻译] RBBAnimation,让你使用关键帧动画更便利
  7. Android图片加载框架最全解析(四),玩转Glide的回调与监听
  8. 《iOS开发指南:从零基础到App Store上架(第2版)》
  9. Search in Rotated Sorted Array leetcode java
  10. c语言中pthread的理解和使用