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

前端之家收集整理的这篇文章主要介绍了php 计算整个mysql数据库大小的实现方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
PHP计算连接的MysqL数据库的大小,用MB,KB或者GB的格式返回,PHP计算整个MysqL数据库的大小,感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:

/**
 * 计算连接的MysqL数据库的大小
 *
 * @param 
 * @arrange (512.笔记) jb51.cc
 **/
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);


/***   代码来自编程之家 jb51.cc(jb51.cc)   ***/

猜你在找的PHP相关文章