php计算整个mysql数据库大小的方法

时间:2021-04-16

  本文实例讲述了php计算整个mysql数据库大小的方法。具体如下:

  这里用MB,KB或者GB的格式返回计算结果。

function CalcFullDatabaseSize($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("SHOW TABLE STATUS FROM ".$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; }
return round($size, 2).$units[$i];
}
/*
** Example:
*/
// open mysql connection:
$handle = mysql_connect('localhost', 'user', 'password');
if (!$handle) { die('Connection failed!'); }
// get the size of all tables in this database:
print CalcFullDatabaseSize('customer1234', $handle);
// --> returns something like: 484.2 KB
// close connection:
mysql_close($handle);

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章