欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL通过SHOW TABLE STATUS查看库中所有表的具体信息

程序员文章站 2022-04-19 12:44:17
有时候我们想看下指定库下所有表的使用情况,比如,查询表的Table大小,什么时候创建的,数据最近被更新的时间(即最近一笔insert/update/delete的时间)。这些信息对我们进行库表维护很有作用。 1.查询语法 2.查询语句说明 此语句返回信息如下图: 3.查询结果中各列的说明 ......

有时候我们想看下指定库下所有表的使用情况,比如,查询表的table大小,什么时候创建的,数据最近被更新的时间(即最近一笔insert/update/delete的时间)。这些信息对我们进行库表维护很有作用。

1.查询语法

show table status
    [{from | in} db_name]
    [like 'pattern' | where expr]

2.查询语句说明

{from | in} db_name, 可选项,表示查询哪个数据库下面的表信息。
like 'pattern' | where expr ,可选项,可指定符合条件的表;like 'pattern' 可指定表名; where expr,可通过 返回输出字段like来指定符合条件的表名。

不带任何参数,表示查询的是当前库中,所以表的具体信息。
例如,以下语句为查询当前库中所以表大小为16384的表信息。
show table status  where data_length like 16384;

此语句返回信息如下图:

MySQL通过SHOW TABLE STATUS查看库中所有表的具体信息

3.查询结果中各列的说明

返回列 说明
name 表名称
engine 表的存储引擎
version 版本
row_format 行格式
rows 表中的行数。对于非事务性表,这个值是精确的,对于事务性引擎,这个值通常是估算的。
avg_row_length 平均每行的大下(字节)
data_length 表的数据量(单位:字节)
max_data_length 表可以容纳的最大数据量
index_length 索引占用磁盘的空间大小
data_free 标识已分配,但现在未使用的空间,并且包含了已被删除行的空间。
auto_increment 下一个auto_increment的值
create_time 表的创建时间
update_time 表的最近更新时间
check_time 最近一次使用 check table 或myisamchk工具检查表的时间
collation 表的字符集和字符排序规则
checksum 如果启用,则对整个表的内容计算时的校验和
create_options 表创建时的其它
comment 表在创建是添加的注释说明