MySQL-InnoDB的B+Tree
2023-05-11 15:14:40 8 举报
画图分享MySQL的索引结构
作者其他创作
大纲/内容
key: 9
page:9
page:6
page:10
key: 2
pk:16
pk:1
page:5
key: 19
page:11
pk:15
............................................................
page:2
page:8
key: 7
key: 5
key: 13
key: 30
图中:- 绿色的page为数据页- 白色的key为索引的键值- 黄色的page为指针,表示【大于等于左边的key的下一级结点-数据页号】- 红色的pk为主键的值,需要根据主键回聚集索引找到真实的数据行
page:1
page:4
page:7
key: 4
key: 47
key: 10
pk:9
page:0
pk:5
pk:12
key: 22
key: 12
pk:13
pk:6
MySQL B+Tree特点:1、非叶子节点不存放数据,只存放索引key及下一层数据页地址2、叶子节点存在数据,且叶子间组成双向链表- 聚集索引存放具体行数据- 非聚集索引存放索引key和主键,需要回表(不含覆盖索引)参考: https://dev.mysql.com/doc/refman/8.0/en/innodb-index-types.html3、默认数据页大小16KB
page:3
pk:22
pk:2
pk:11
key: 37
pk:14
key: 3
收藏
0 条评论
下一页