ITEEDU

13.5.4.18. SHOW TABLE STATUS语法

SHOW TABLE STATUS [FROM db_name] [LIKE 'pattern']

SHOW TABLE STATUS的性质与SHOW TABLE类似,不过,可以提供每个表的大量信息。您也可以使用mysqlshow --status db_name命令得到此清单。

本语句也显示视图信息。

对于NDB Cluster表,本语句的输出显示Avg_row_length和Data_length列的适当值,不过BLOB列没有被考虑进来。另外,复制数量在Comment列中显示(作为number_of_replicas)。

SHOW TABLE STATUS会返回以下字段:

·         Name

表的名称。

·         Engine

表的存储引擎。在MySQL 4.1.2之前,本值被标记为Type。请参见第15章:存储引擎和表类型

·         Version

表的.frm文件的版本号。

·         Row_format

行存储格式(Fixed, Dynamic, Compressed, Redundant, Compact)。InnoDB表的格式被报告为Redundant或Compact。

·         Rows

行的数目。部分存储引擎,如MyISAM,存储精确的数目。

对于其它存储引擎,比如InnoDB,本值是一个大约的数,与实际值相差可达40到50%。在这些情况下,使用SELECT COUNT(*)来获得准确的数目。

对于在INFORMATION_SCHEMA数据库中的表,Rows值为NULL。

·         Avg_row_length

平均的行长度。

·         Data_length

数据文件的长度。

·         Max_data_length

数据文件的最大长度。如果给定了数据指针的大小,这是可以被存储在表中的数据的字节总数。

·         Index_length

索引文件的长度。

·         Data_free

被整序,但是未使用的字节的数目。

·         Auto_increment

下一个AUTO_INCREMENT值。

·         Create_time

什么时候表被创建。

·         Update_time

什么时候数据文件被最后一次更新。

·         Check_time

什么时候表被最后一次检查。不是所有的存储引擎此时都更新,在此情况下,值为NULL。

·         Collation

表的字符集和整序。

·         Checksum

活性校验和值。

·         Create_options

和CREATE TABLE同时使用的额外选项。

·         Comment

创建表时使用的评注(或者有关为什么MySQL可以访问表信息的说明)。

在表评注中,InnoDB表报告表所属的表空间的空闲空间。对于一个位于共享表空间中的表,这是共享表空间中的空闲空间。如果您正在使用多个表空间,并且该表有自己的表空间,则空闲空间只用于此表。

对于MEMORY (HEAP)表,Data_length, Max_data_length和Index_length值近似于被整序的存储器的实际值。整序算法预留了大量的存储器,以减少整序操作的数量。

对于视图,由SHOW TABLE STATUS显示的所有字段均为NULL。例外情况是Name指示为视图名称同时Comment称为视图。