参考样例如下:
表数据:
page directory 如下:

通过主键搜索首先在page directory 中二分查找最接近的比如查找主键a=5的记录,会查找到00 e5
此为相对地址 换算为c0e5
![]()
可得主键为4 不为5 但是通过前面的 04 00 28 00 22可以得出有四个记录,通过22 相对位置可以得出下一个记录的地址 而22相对位置给出的记录是以主键递增的顺序给出的 所以进一步查找可查找到主键为5的记录,而record header中的 4-8位表示下面还有多少个记录(可以看出有些record header中4-8位为0 根据样例跳转四次以后又出现了record header) 供二分查找使用
本文揭示了MySQL InnoDB数据页的查找机制,通过实例讲解了如何利用主键和recordheader进行高效搜索,特别是二分查找策略在数据密集型查找中的应用。
3299

被折叠的 条评论
为什么被折叠?



