1. 《查询优化的基本思路》

    文章提供了一些查询优化的基本思路,从索引和慢查询的关系什么叫做使用了索引索引的过滤性查询的过滤性,这几个方面分析了查询的优化过程,尤其是查询的过滤性最有看点。在查询的过滤性这点中说到在 MySQL 5.5 和之前的版本中查询的执行流程,和在 MySQL 5.6 版本引入了 index condition pushdown 的优化,最后说到在 MySQL 5.7 引入的虚拟列的优化,非常精彩的分析。

    1. 《如何避免回表查询?什么是索引覆盖? | 1分钟MySQL优化系列》

    文章从什么是回表查询什么是索引覆盖如何实现索引覆盖,这几个方面分析了查询的优化过程,其实还是要从原理出发,如果你了解 InnoDB 索引的原理,文章中说的内容就可以很好的理解了。

    1. 《两类非常隐蔽的全表扫描,不能命中索引(一分钟系列)》


      文章描述了如下两种场景会导致索引失效:

    2. 列类型where 中的参数类型不符,不能命中索引,会导致全表扫描。

    3. 相 join 的两个表的字符编码不同,不能命中索引,会导致笛卡尔积的循环计算。

    作者:殷建卫 链接:https://www.yuque.com/yinjianwei/vyrvkf/gre1uu 来源:殷建卫 - 架构笔记 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。