什么是索引:
1.索引是一种排好序的,帮助我们快速查询的一种数据结构
2.索引实际上也是一张表,也要占用次哦按空间,mysql在增删改查时不仅要保存数据,还要保存一下索引文件
3.mysql中的聚簇索引,复合索引,唯一索引默认都是使用B+数索引
B+Tree是BTree的演变,一种多叉平衡树,非叶子节点不存储真实的数据,只存储指搜索方向的数据项. (二分查找)
单列索引
唯一索引
复合索引
聚簇索引
索引优化
Explain + SQL语句
怎么避免索引失效
1.不遵循左前缀原则
2.在索引列上做任何操作,都会导致索引失效
3.范围条件之后列都会索引失效
4.不等于 != 无法使用索引,导致全表扫描
5.is null ,is not null无法使用索引
6.like以通配符开头(%abc)索引失效—>两边都用%的话%,可以使用覆盖索引 解决索引失效问题