MySQL的索引的底层的实现原理两种:B+树、哈希。
B+树:
B+树是平衡树的一种,如果用普通的树有可能的会退化成链表(用红黑树也不能彻底解决这个问题,红黑树还是会导致不平衡)
为什么用B+树:
InnoDB索引实现:
主键设置:
B+树的插入操作:
B+树的删除操作:
聚集索引与非聚集索引:
InnoDB就是利用的聚集索引:
非聚集索引也叫做辅助索引:
哈希索引:
https://www.jianshu.com/p/9bd572b0a0d4
https://www.cnblogs.com/hyunbar/p/11185095.html
https://my.oschina.net/xiaoyoung/blog/3046779