文章目录
1、B 树和 B +树之间的区别是什么?
b树叶子节点没有指针,b+树有
2、 Innodb 中的 B +树有什么特点?
叶子节点有前后指针
3、什么是 Innodb 中的 page ?
innodeb page size 16kb,MySQL底层存取数据是以页即page为最小单位进行的
page由页头 页目录 用户数据构成,其中页头中又包含前指针和后指针
4、 Innodb 中的 B +树是怎么产生的?
5、什么是聚簇索引?
MySQL的主键索引就是聚集索引,叶子节点上
存有所有数据
6、 Innodb 是如何支持范围查找能走索引的?
先找到索引临界值,然后再根据大于或小于找到这个临界值前面或者后面的数据
7、什么联合索引?对应的 B +树是如何生成的?
多个字段构成的索引就是联合索引,其叶子节点上存有主键值
7、什么联合索引?对应的 B +树是如何生成的?
多个字段构成的索引就是联合索引,其叶子节点上存有主键值
8、什么是最左前缀原则?
联合索引查询满足最左前缀匹配原则才会用到索引
9、为什么要遵守最左前缀原则才能利用到索引?
联合索引构建时候按照最左前缀原则构建的,只有满足最左前缀原则才可以从索引树上从上往下找
10、什么是索引条件下推?
11、什么是覆盖索引?
当查询条件使用到索引时候,所查询的字段正好也是索引,不需要进行回表
12、有哪些情况会导致索引失效?
不满足最左前缀原则
order by
数据类型转换时候,字符和数字比较时候,会把字符转为数字再进行比较
范围查找时候也可能