MySQL經過SHOW TABLE STATUS查看庫中全部表的具體信息

有時候咱們想看下指定庫下全部表的使用狀況,好比,查詢表的Table大小,何時建立的,數據最近被更新的時間(即最近一筆insert/update/delete的時間)。這些信息對咱們進行庫表維護頗有做用。sql

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;

此語句返回信息以下圖:數據庫

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 表在建立是添加的註釋說明
 
4.經過系統數據庫查詢

其實咱們也能夠經過information_schema數據庫下面的tables表去查詢表的具體信息。查詢結果和上面的信息差很少。例如咱們查詢 dbtest 數據庫下面的表信息
select * from information_schema.tables where TABLE_SCHEMA='dbtest' \G;

  顯示結果以下:工具

相關文章
相關標籤/搜索