数据结构可视化
https://www.cs.usfca.edu/~galles/visualization/Algorithms.html
索引是帮助MySQL高效获取数据的排好序的数据结构
二叉树
递增数据变成链表
红黄黑
树高无法控制
B树
B+树
非叶子节点不存储data
叶子节点包含所有索引字段
叶子节点用指针连接,提高区间访问性能。
MyISAM索引文件和数据的分离的(非聚集)
*.frm *.MYI *.MYD
InnoDB索引(聚集)
*.frm *.ibd
非聚集索引(MyISAM):索引和数据分开存储
聚集索引(InnoDB):叶子节点包含完整的数据记录
(一种数据组织方式,不是真正的索引)
一般来说只有主键索引才是聚集索引。
二级索引存放的数据为主键字段,查到主键后会再回到主键索引查询记录
联合索引
排序规则:按照字段逐个比较排序
只有第一条SQL会走索引,最左前缀,从左开始匹配索引
关键字 EXPLAIN ?