28.4.23 INFORMATION_SCHEMA INNODB_TABLES 表
INNODB_TABLES 表提供了关于 InnoDB 表的元数据。
有关使用信息和示例,请参见第17.15.3节,“InnoDB INFORMATION_SCHEMA Schema Object Tables”。
INNODB_TABLES 表具有以下列:
-
TABLE_ID
InnoDB 表的标识符。这在实例中的所有数据库中都是唯一的。
-
NAME
表名,可能带有 schema(数据库)名称(例如,
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
语句添加第一个瞬时列时存在的列数。该列不再使用。 -
TOTAL_ROW_VERSIONS
表的行版本号。初始值为0。该值由添加或删除列的
ALTER TABLE ... ALGORITHM=INSTANT
操作递增。当由于表重建的ALTER TABLE
或OPTIMIZE TABLE
操作重建了包含瞬时添加或删除列的表,该值将被重置为0。更多信息,请参见Column Operations.
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
特权以查询该表。 -
使用
INFORMATION_ SCHEMA
COLUMNS
表或SHOW COLUMNS
语句查看该表的列信息,包括数据类型和默认值。