第一種:如果想知道MySQL資料庫中每個表佔用的空間、表記錄的行數的話,可以開啟MySQL的 information_schema 資料庫。在該庫中有一個 TABLES 表,這個表主要欄位分別是:TABLE_SCHEMA : 資料庫名TABLE_NAME:表名ENGINE:所使用的儲存引擎TABLES_ROWS:記錄數DATA_LENGTH:資料大小INDEX_LENGTH:索引大小其他欄位請參考MySQL的手冊,我們只需要瞭解這幾個就足夠了。所以要知道一個表佔用空間的大小,那就相當於是 資料大小 + 索引大小 即可。SQL:SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA="資料庫名" AND TABLE_NAME="表名"第二種:1、進去指定schema 資料庫(存放了其他的資料庫的資訊) 1 mysql> use information_schema;2 Database changed 2、查詢所有資料的大小 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024), 2),"MB")2 -> as data fromTABLES;3 +-----------+4 | data |5 +-----------+6 | 6674.48MB |7 +-----------+8 1 row inset (16.81 sec) 3、檢視指定資料庫例項的大小,比如說資料庫 forexpert 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024), 2),"MB")2 -> as data fromTABLES where table_schema="forexpert";3 +-----------+4 | data |5 +-----------+6 | 6542.30MB |7 +-----------+8 1 row inset (7.47 sec) 4、檢視指定資料庫的表的大小,比如說資料庫 forexpert 中的 member 表 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024),2),"MB")as data2 -> from TABLES wheretable_schema="forexpert"3 -> and table_name="member";4 +--------+5 | data |6 +--------+7 | 2.52MB |8 +--------+9 1 row inset (1.88 sec)
第一種:如果想知道MySQL資料庫中每個表佔用的空間、表記錄的行數的話,可以開啟MySQL的 information_schema 資料庫。在該庫中有一個 TABLES 表,這個表主要欄位分別是:TABLE_SCHEMA : 資料庫名TABLE_NAME:表名ENGINE:所使用的儲存引擎TABLES_ROWS:記錄數DATA_LENGTH:資料大小INDEX_LENGTH:索引大小其他欄位請參考MySQL的手冊,我們只需要瞭解這幾個就足夠了。所以要知道一個表佔用空間的大小,那就相當於是 資料大小 + 索引大小 即可。SQL:SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA="資料庫名" AND TABLE_NAME="表名"第二種:1、進去指定schema 資料庫(存放了其他的資料庫的資訊) 1 mysql> use information_schema;2 Database changed 2、查詢所有資料的大小 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024), 2),"MB")2 -> as data fromTABLES;3 +-----------+4 | data |5 +-----------+6 | 6674.48MB |7 +-----------+8 1 row inset (16.81 sec) 3、檢視指定資料庫例項的大小,比如說資料庫 forexpert 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024), 2),"MB")2 -> as data fromTABLES where table_schema="forexpert";3 +-----------+4 | data |5 +-----------+6 | 6542.30MB |7 +-----------+8 1 row inset (7.47 sec) 4、檢視指定資料庫的表的大小,比如說資料庫 forexpert 中的 member 表 1 mysql> selectconcat(round(sum(DATA_LENGTH/1024/1024),2),"MB")as data2 -> from TABLES wheretable_schema="forexpert"3 -> and table_name="member";4 +--------+5 | data |6 +--------+7 | 2.52MB |8 +--------+9 1 row inset (1.88 sec)