`
tianhandigeng
  • 浏览: 369106 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

计算mysql数据库数据表的大小,不精确,只是大概的数据

阅读更多

SHOW TABLE STATUS dbname
返回数组:
Name: xxx (表名)
Engine: MyISAM (表引擎)
Version: 10 (版本)
Row_format: Dynamic (行格式)
Rows: (表内总行数)
Avg_row_length: (平均每行大小,这里是4.7K)
Data_length: (该表总大小,单位字节)
Max_data_length: (该表可存储上限)
Index_length: (索引大小)
Data_free: (数据多余)
Auto_increment: (自动累加ID 6W9,而前面的行数只有5W6,说明我有删掉了1W3笔数据)
Create_time:
Update_time:
Check_time:
Collation: 编码
Checksum:
Create_options: row_format=DYNAMIC
Comment: (注释)

数据库的大小=表结构+表数据+索引 实际情况大多采用Data_length+Index_length

实例代码:test数据库名,可以接 like 表。SHOW TABLE STATUS FROM `test` like biao
(注:+9000的意思,数据库文件中有个.frm无法通过代码取得其大小,而此文件的大约是9k,或者更大)

<?php
include ("comment.php");

$sql="SHOW TABLE STATUS FROM `cx_fcd` ";
$result = mysql_query($sql);
$array=mysql_fetch_array($result,MYSQL_ASSOC);

$t=0;
$result1 = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$lycs[]=$row;
$t+=$row['Index_length']+$row['Data_length']+9000;
}//取得新闻列表

echo "表名:".$array['Name'].",Data_length大 小:".$array['Data_length'].",Index_length大小:".$array['Index_length'].",总大 小:".($array['Data_length']+$array['Index_length'])."<br>";
echo "数据库大小:".round($t/1024)."KB<br>";
print_r($lycs);

?>

下面是显示部分结果,(实际数据库大小为:258 KB 相差16KB)
表名:cx_admin_nav,Data_length大小:208,Index_length大小:2048,总大小:2256
数据库大小:242KB
Array ( [0] => Array ( [Name] => cx_ejcontent [Engine] => MyISAM [Version] => 10 [Row_format] => Dynamic [Rows] => 0 [Avg_row_length] => 0 [Data_length] => 0 [Max_data_length] => 281474976710655 [Index_length] => 1024 [Data_free] => 0 [Auto_increment] => 1 [Create_time] => 2010-06-24 08:30:24 [Update_time] => 2010-06-24 08:30:26 [Check_time] => [Collation] => utf8_general_ci [Checksum] => [Create_options] => [Comment] => ) [1] => Array ( [Name] => cx_ejsub_details [Engine] => MyISAM [Version] => 10 [Row_format] => Dynamic [Rows] => 0 [Avg_row_length] => 0 [Data_length] => 0 [Max_data_length] => 281474976710655 [Index_length] => 1024 [Data_free] => 0 [Auto_increment] => 1 [Create_time] => 2010-06-24 08:31:18 [Update_time] => 2010-06-24 08:31:20 [Check_time] => [Collation] => utf8_general_ci [Checksum] => [Create_options] => [Comment] => ) )

 

 

分享到:
评论

相关推荐

    03开源NewSql数据库TiDB-Deep Dive into TiDB

    TiSpark 1.0 版本组件提供了针对 TiDB 上的数据使用 Apache Spark 进行分布式计算的能力。更新包括: 1.提供了针对 TiKV 读取的 gRPC 通信框架 2.提供了对 TiKV 组件数据的和通信协议部分的编码解码 3.提供了计算...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例025 更精确地使用浮点数 35 实例026 不用乘法运算符实现2×16 37 实例027 实现两个变量的互换(不借助 第3个变量) 37 2.3 条件语句 38 实例028 判断某一年是否为闰年 38 实例029 验证登录信息的合法性 39 实例...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增、截取、更新、删除等操作。 ...

    云梯端crm客户管理系统.rar

    高度的数据稳定性,**台使用Microsoft SQL Server数据库,数据库稳定可靠、安全,对于业务数据量大、稳定性要求高、操作终端多的用户尤其适合。 14、完善的进、销、存管理及分析功能 完善的进、销、存管理及分析...

    2009达内SQL学习笔记

    可以利用通配符创建比较特定数据的搜索模式,通配符只能用于文本,非文本数据类型不能使用通配符。 通配符在搜索模式中任意位置使用,并且可以使用多个通配符。 通配符%表示任何字符出现任意次数;还能代表搜索...

    JAVA上百实例源码以及开源项目源代码

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    JAVA上百实例源码以及开源项目

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    javaSE代码实例

    12.5.2 浮点数的精确计算 239 12.6 小结 242 第13章 字符串——优异的内存组织机制 243 13.1 String类的基础知识 243 13.1.1 对象的创建 243 13.1.2 巧用构造器 244 13.1.3 String类的重要方法 245 ...

Global site tag (gtag.js) - Google Analytics