SHOW TABLE STATUS 是獲取表級元數據的核心命令,返回 18 個字段,涵蓋存儲引擎、行數、索引大小、自增值、時間戳等關鍵信息,是容量規劃、性能調優的重要依據。
| 字段 | 含義 | 備註 |
|---|---|---|
| Name | 表名稱 | |
| Engine | 存儲引擎 | InnoDB、MyISAM 等 |
| Version | 表版本號 | 每次 ALTER 遞增 |
| Row_format | 行格式 | Dynamic/Fixed/Compressed(MyISAM);Compact/Redundant/Dynamic/Compressed(InnoDB) |
| Rows | 行數估值 | 非事務引擎精確;InnoDB 為採樣估算,可能偏差 |
| Avg_row_length | 平均行長度(字節) | Data_length / Rows |
| Data_length | 數據文件大小(字節) | 不含索引 |
| Max_data_length | 最大數據容量 | 受引擎、文件系統限制 |
| Index_length | 索引文件大小(字節) | |
| Data_free | 碎片/可回收空間 | MyISAM 含已刪除行空間;InnoDB 顯示表空間剩餘 |
| Auto_increment | 下一個自增值 | |
| Create_time | 建表時間 | |
| Update_time | 最後數據修改時間 | InnoDB 可能為 NULL |
| Check_time | 最後檢查時間 | CHECK TABLE 或 myisamchk |
| Collation | 字符集與排序規則 | 如 utf8mb4_general_ci |
| Checksum | 校驗和 | 僅 MyISAM 支援 |
| Create_options | 建表附加選項 | 如 PARTITION、ROW_FORMAT 等 |
| Comment | 備註信息 | 視圖顯示 VIEW;InnoDB 顯示剩餘空間 |
SHOW TABLE STATUS LIKE 'orders'\G; -- 關注 Auto_increment 與 Rows 的差距,預防 ID 耗盡
避免隱式轉換導致索引失效,批量檢查 Collation 字段。
SELECT COUNT(*)Data_free 在共享表空間模式下反映整個表空間剩餘,非單表