约定 index page(索引页、索引块),InnoDB表是基于聚集索引的索引组织表,整个表其实不是聚集索引,就是普通索引。因此InnoDB表空间文件中,数据页其实也是索引页,所以下面我们统称为索引页,英文用page no表示;
二、innblock简介 本工具有2个功能。
第一个scan功能用于查找ibd文件中所有的索引页。
第二个analyze功能用于扫描数据块里的row data。
先看下 help 输出
------------------------------------------------------------------------ [Author]:gaopeng [Blog]:blog.itpub.net/7728585/abstract/1/ [QQ]:22389860 [Review]:yejinrong@zhishutang [Blog]:imysql.com [QQ]:4700963 -------USAGE:../innblock Datafile [scan/pageno] Blocksize [Datafile]:innodb data file! [scan]:physical scan data file to find index level and index block no [pageno]:which block you will parse [Blocksize](KB):block size of KB general is 16k only 4k/8k/16k/32k ------------------------------------------------------------------------ scan功能 [root@test test]# ./innblock testblock.ibd scan 16 analyze功能 [root@test test]# ./innblock testblock.ibd 3 16 可以执行 innblock help 获得更详细的使用帮助信息。
基本信息(Block base info) [block_no]:page offset no inside space,begin is 0(取自 FIL_PAGE_OFFSET) 索引页码(index page no),该页相对于表空间的偏移量,从0开始计数。如果page no = 3,则实际上是第4个index page。 [space_id]:this contains the space id of the page(FIL_PAGE_SPACE_ID) 本索引页所属的表空间ID,可以在 INNODB_SYS_TABLES、INNODB_SYS_TABLESPACES、INNODB_SYS_DATAFILES 等系统视图中查看。