php计算整个mysql数据库大小的方法
本文实例讲述了php计算整个mysql数据库大小的方法。分享给大家供大家参考。具体如下:
这里用MB,KB或者GB的格式返回计算结果。
functionCalcFullDatabaseSize($database,$db){
$tables=mysql_list_tables($database,$db);
if(!$tables){return-1;}
$table_count=mysql_num_rows($tables);
$size=0;
for($i=0;$i<$table_count;$i++){
$tname=mysql_tablename($tables,$i);
$r=mysql_query("SHOWTABLESTATUSFROM".$database."LIKE'".$tname."'");
$data=mysql_fetch_array($r);
$size+=($data['Index_length']+$data['Data_length']);
};
$units=array('B','KB','MB','GB','TB');
for($i=0;$size>1024;$i++){$size/=1024;}
returnround($size,2).$units[$i];
}
/*
**Example:
*/
//openmysqlconnection:
$handle=mysql_connect('localhost','user','password');
if(!$handle){die('Connectionfailed!');}
//getthesizeofalltablesinthisdatabase:
printCalcFullDatabaseSize('customer1234',$handle);
//-->returnssomethinglike:484.2KB
//closeconnection:
mysql_close($handle);
希望本文所述对大家的php程序设计有所帮助。