如果想知道MySQL數(shù)據(jù)庫中每個表占用的空間、表記錄的行數(shù)的話,可以打開MySQL的 information_schema 數(shù)據(jù)庫。在該庫中有一個 TABLES 表,這個表主要字段分別是:
TABLE_SCHEMA : 數(shù)據(jù)庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數(shù)
DATA_LENGTH:數(shù)據(jù)大小
INDEX_LENGTH:索引大小
其他字段請參考MySQL的手冊,這幾個字段對我們來說最有用。
一個表占用空間的大小,相當(dāng)于是 數(shù)據(jù)大小 + 索引大小,
示例:
1.想查看hx庫的所有表大小,可以使用:
代碼如下:
SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx';
+-------------------+--------------------------+------------+
| TABLE_NAME | DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+-------------------+--------------------------+------------+
| enjoy_data | 6979584 | 70113 |
| hx_record | 113410048 | 753279 |
| itlearner_record | 21835546624 | 104917777 |
| tmp_day_id | 17326 | 811 |
+-------------------+--------------------------+------------+
2.想查看hx庫的enjoy表大小,可以使用:
代碼如下:
SELECT DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx' AND TABLE_NAME = 'enjoy_data';
返回:
代碼如下:
+--------------------------+------------+
| DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+--------------------------+------------+
| 6979584 | 70113 |
+--------------------------+------------+
更多信息請查看IT技術(shù)專欄