要查詢 MySQL 資料表所用的空間,雖然資料表是用 MyISAM 的話,可以直接用 ls 指令知道,但這個方法不可以用在 InnoDB 資料表上面。
要計算資料表的容量,可以供用 MySQL 語句 "SHOW TABLE STATUS" 實現,然後將回傳的 Data_length 加 Index_length 即可。以下程式會擷取資料庫內所有資料表的使用空間:
PHP:
-
<?php
-
-
$total_size = $rows['Data_length'] + $rows['Index_length'];
-
-
// return table size by KB or MB
-
if($total_size <1048576){
-
$total_size = $total_size / 1024;
-
}else{
-
$total_size = $total_size / 1024 / 1024;
-
}
-
-
}
-