该 INNODB_TABLES
表提供了关于 InnoDB
表的元数据。
有关相关使用信息和示例,请参阅 第 17.15.3 节,“InnoDB INFORMATION_SCHEMA 模式对象表”。
该 INNODB_TABLES
表具有以下列:
-
TABLE_ID
InnoDB 表的标识符,该值在实例中的所有数据库中是唯一的。
-
NAME
表的名称,在适当情况下带有模式(数据库)名称(例如,
test/t1
)。数据库和用户表的名称与其原始定义相同,可能受到lower_case_table_names
设置的影响。 -
FLAG
表示表格式和存储特征的位级信息的数字值。
-
N_COLS
表中的列数。报告的数字包括 InnoDB 创建的三个隐藏列(
DB_ROW_ID
、DB_TRX_ID
和DB_ROLL_PTR
)。报告的数字还包括虚拟生成列,如果存在的话。 -
SPACE
表所在表空间的标识符。0 表示 InnoDB 系统表空间。任何其他数字表示文件每表表空间或通用表空间。该标识符在
TRUNCATE TABLE
语句后保持不变。对于文件每表表空间,该标识符在实例中的所有数据库中是唯一的。 -
ROW_FORMAT
表的行格式(
Compact
、Redundant
、Dynamic
或Compressed
)。 -
ZIP_PAGE_SIZE
压缩页面大小。仅适用于行格式为
Compressed
的表。 -
SPACE_TYPE
表所属的表空间类型。可能的值包括
System
表示系统表空间、General
表示通用表空间和Single
表示文件每表表空间。使用CREATE TABLE
或ALTER TABLE
TABLESPACE=innodb_system
分配到系统表空间的表的SPACE_TYPE
为General
。有关更多信息,请参阅CREATE TABLESPACE
。 -
INSTANT_COLS
使用
ALTER TABLE ... ADD COLUMN
和ALGORITHM=INSTANT
添加的列数。该列不再使用。 -
TOTAL_ROW_VERSIONS
表的行版本数。初始值为 0。该值会因
ALTER TABLE ... ALGORITHM=INSTANT
操作而增加。当表具有即时添加或删除列时,表被重建,例如由于ALTER TABLE
或OPTIMIZE TABLE
操作,该值将重置为 0。有关更多信息,请参阅 列操作。
示例
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_TABLES WHERE TABLE_ID = 214\G
*************************** 1. row ***************************
TABLE_ID: 1064
NAME: test/t1
FLAG: 33
N_COLS: 6
SPACE: 3
ROW_FORMAT: Dynamic
ZIP_PAGE_SIZE: 0
SPACE_TYPE: Single
INSTANT_COLS: 0
TOTAL_ROW_VERSIONS: 3
注意
-
您必须拥有
PROCESS
权限以查询该表。 -
使用
COLUMNS
表或SHOW COLUMNS
语句来查看该表的列的更多信息,包括数据类型和默认值。