首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 快速查看資料表狀態:SHOW TABLE STATUS 指令詳解

     編輯:MySQL 綜合教學

指令語法

SHOW TABLE STATUS FROM `database_name` [LIKE 'pattern']\G
  • \G 以垂直格式顯示,適合欄位較多時閱讀。
  • 可加 LIKE 篩選表名模式。

輸出欄位完整說明

欄位含義
Name資料表名稱
Engine儲存引擎 (MyISAM, InnoDB, MEMORY...)
Version表定義版本號
Row_format列格式 (Fixed, Dynamic, Compressed, Redundant, Compact)
Rows預估行數 (InnoDB 為近似值)
Avg_row_length平均每列位元組數
Data_length資料檔案大小 (bytes)
Max_data_length最大資料容量 (MyISAM 受限於指標大小)
Index_length索引檔案大小 (bytes)
Data_free已分配但未使用空間 (碎片)
Auto_increment下一個 AUTO_INCREMENT 值
Create_time建立時間
Update_time最後資料修改時間
Check_time最後 CHECK TABLE 時間
Collation字元集排序規則
Checksum即時校驗和 (MyISAM)
Create_options建表額外選項 (如 partitioned, row_format=compressed)
Comment備註 (含表空間路徑等)

實戰範例

mysql> SHOW TABLE STATUS FROM mysql\G
*************************** 1. row ***************************
           Name: columns_priv
         Engine: MyISAM
        Version: 10
     Row_format: Fixed
           Rows: 0
 Avg_row_length: 0
    Data_length: 1024
Max_data_length: 254649548129
   Index_length: 2048
     Data_free: 0
Auto_increment: NULL
   Create_time: 2023-01-15 10:30:00
   Update_time: 2023-01-15 10:30:00
   Check_time: NULL
    Collation: utf8_bin
     Checksum: NULL
Create_options:
       Comment:
...

常見用途

  • 快速掌握資料表大小、引擎、自增值、碎片程度。
  • 判斷是否需 OPTIMIZE TABLE 整理碎片 (Data_free 過大)。
  • 檢查 Auto_increment 接近上限風險。
  • 比對主從同步時的 Update_time / Check_time。

相關指令

  • SHOW TABLE STATUS LIKE 'prefix%' 篩選前綴。
  • SHOW TABLE STATUS WHERE Engine='InnoDB' (MySQL 5.0+ 支援 WHERE)。
  • INFORMATION_SCHEMA.TABLES 標準 SQL 查詢方式,功能更強。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved