Documentation Home
MySQL 8.0 参考手册  / 第 15 章 InnoDB 存储引擎  / 14.10 InnoDB 文件格式管理  /  14.10.3 识别正在使用的文件格式

14.10.3 识别正在使用的文件格式

如果您使用 配置选项启用不同的文件格式innodb_file_format,则更改仅适用于新创建的表。此外,当您创建一个新表时,包含该表的表空间被标记为支持该表的功能所需的最早最简单”的文件格式。例如,如果您启用 Barracuda文件格式,并创建一个不使用动态或压缩行格式的新表,则包含该表的新表空间将被标记为使用 Antelope文件格式。

很容易识别给定表使用的文件格式。Antelope如果报告的行格式SHOW TABLE STATUSCompact或,则该表使用文件格式RedundantBarracuda如果报告的行格式SHOW TABLE STATUSCompressed或,则该表使用文件格式Dynamic

mysql> SHOW TABLE STATUS\G
*************************** 1. row ***************************
           Name: t1
         Engine: InnoDB
        Version: 10
     Row_format: Compact
           Rows: 0
 Avg_row_length: 0
    Data_length: 16384
Max_data_length: 0
   Index_length: 16384
      Data_free: 0
 Auto_increment: 1
    Create_time: 2014-11-03 13:32:10
    Update_time: NULL
     Check_time: NULL
      Collation: latin1_swedish_ci
       Checksum: NULL
 Create_options:
        Comment:

您还可以使用表来识别给定表或表空间使用的文件格式InnoDB INFORMATION_SCHEMA。例如:

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME='test/t1'\G
*************************** 1. row ***************************
     TABLE_ID: 44
         NAME: test/t1
         FLAG: 1
       N_COLS: 6
        SPACE: 30
  FILE_FORMAT: Antelope
   ROW_FORMAT: Compact
ZIP_PAGE_SIZE: 0

mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES WHERE NAME='test/t1'\G
*************************** 1. row ***************************
        SPACE: 30
         NAME: test/t1
         FLAG: 0
  FILE_FORMAT: Antelope
   ROW_FORMAT: Compact or Redundant
    PAGE_SIZE: 16384
ZIP_PAGE_SIZE: 0