innodb的B+TREE层数

查看employee_1表

desc employee_1

总条数

select count(*) from employee_1

查看information_schema中相关表信息

注意索引的PAGE_NO和:index_id

SELECT b.name, a.name, index_id, type, a.space, a.PAGE_NO 
FROM information_schema.INNODB_SYS_INDEXES a, information_schema.INNODB_SYS_TABLES b 
WHERE a.table_id = b.table_id AND a.space <> 0 and b.name='king/employee_1'

查看innodb页大小

show global variables like 'innodb_page_size';

表空间目录

/var/lib/mysql/king

# -s  从偏移量开始输出
# -n  前10个字节
hexdump -s 49216 -n 10 ./employee_1.ibd

000c040 0200 0000 0000 0000 6600
000c04a

可以发现 主键索引(PRIMARY)的PAGE_LEVEL 为 0200,表示这棵二级索引树的高度为 3

注:hexdump中49216,这个数分别对应employee_1表的索引
公式是 page_no * innodb_page_size + 64
PRIMARY:(16384*3)+64=49216 
同时可以观察hexdump结果中的6600,此数十六进制为66,转换成十进制为:102,分别和information_schema中的index_id对应上了.

参考文档

 https://www.cnblogs.com/2woods/p/9978011.html

猜你喜欢

转载自blog.csdn.net/kq1983/article/details/114970089