約定 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 等系統視圖中查看。