24.32.22 INFORMATION_SCHEMA INNODB_SYS_TABLEStable

INNODB_SYS_TABLEStable 提供有关InnoDBtable 的元数据,等效于InnoDB数据字典中SYS_TABLEStable 的信息。

有关相关用法信息和示例,请参见第 14.16.3 节“ InnoDB INFORMATION_SCHEMA 系统 table”

INNODB_SYS_TABLEStable 具有以下列:

  • TABLE_ID

InnoDBtable 的标识符。该值在实例中的所有数据库中都是唯一的。

  • NAME

table 的名称,在适当的地方(例如test/t1)在模式(数据库)名称之后。数据库和用户 table 的名称与最初定义的名称相同,可能受lower_case_table_names设置影响。

  • FLAG

一个数字值,table 示有关 table 格式和存储 Feature 的位级别信息。

  • N_COLS

table 中的列数。报告的数字包括由InnoDB(DB_ROW_IDDB_TRX_IDDB_ROLL_PTR)创建的三个隐藏列。报告的数字还包括虚拟生成的列(如果存在)。

  • SPACE

table 所在的 table 空间的标识符。 0table 示InnoDB system tablespace。任何其他数字代 tablefile-per-tabletable 空间或常规 table 空间。 TRUNCATE TABLE语句后,此标识符保持不变。对于每 table 文件 table 空间,此标识符对于实例中所有数据库中的 table 都是唯一的。

  • FILE_FORMAT

table 格的文件格式(AntelopeBarracuda)。

  • ROW_FORMAT

table 格的行格式(CompactRedundantDynamicCompressed)。

  • ZIP_PAGE_SIZE

邮政编码页面大小。仅适用于行格式为Compressed的 table。

  • SPACE_TYPE

该 table 所属的 table 空间的类型。可能的值包括System(对于系统 table 空间),General(对于常规 table 空间)和Single(对于每 table 文件 table 空间)。使用CREATE TABLEALTER TABLE TABLESPACE=innodb_system分配给系统 table 空间的 table 的SPACE_TYPEGeneral。有关更多信息,请参见CREATE TABLESPACE

Example

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE TABLE_ID = 214\G
*************************** 1. row ***************************
     TABLE_ID: 214
         NAME: test/t1
         FLAG: 129
       N_COLS: 4
        SPACE: 233
  FILE_FORMAT: Antelope
   ROW_FORMAT: Compact
ZIP_PAGE_SIZE: 0
   SPACE_TYPE: General

Notes

  • 您必须具有PROCESS特权才能查询此 table。

  • 使用INFORMATION_SCHEMA COLUMNStable 或SHOW COLUMNS语句查看有关此 table 列的其他信息,包括数据类型和默认值。