有時候咱們想看下指定庫下全部表的使用狀況,好比,查詢表的Table大小,何時建立的,數據最近被更新的時間(即最近一筆insert/update/delete的時間)。這些信息對咱們進行庫表維護頗有做用。sql
SHOW TABLE STATUS [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr]
{FROM | IN} db_name, 可選項,表示查詢哪一個數據庫下面的表信息。
LIKE 'pattern' | WHERE expr ,可選項,可指定符合條件的表;LIKE 'pattern' 可指定表名; WHERE expr,可經過 返回輸出字段like來指定符合條件的表名。
不帶任何參數,表示查詢的是當前庫中,因此表的具體信息。
例如,如下語句爲查詢當前庫中因此表大小爲16384的表信息。
SHOW TABLE STATUS where Data_length like 16384;
此語句返回信息以下圖:數據庫
返回列 | 說明 |
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;
顯示結果以下:工具