MySQL数据库查看数据表占用空间大小和记录数的方法

别自制压力,我们没有必要跟着时间走,只需跟着心态和能力走,随缘,尽力,达命,问心无愧,其他的,交给天。

如果想知道MySQL数据库中每个表占用的空间、表记录的行数的话,可以打开MySQL的 information_schema 数据库。在该库中有一个 TABLES 表,这个表主要字段分别是:

TABLE_SCHEMA : 数据库名
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小

其他字段请参考MySQL的手册,这几个字段对我们来说最有用。
一个表占用空间的大小,相当于是 数据大小 + 索引大小,

示例:

1.想查看hx库的所有表大小,可以使用:


SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx';

+-------------------+--------------------------+------------+
| TABLE_NAME | DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+-------------------+--------------------------+------------+
| enjoy_data | 6979584 | 70113 |
| hx_record | 113410048 | 753279 |
| itlearner_record | 21835546624 | 104917777 |
| tmp_day_id | 17326 | 811 |
+-------------------+--------------------------+------------+


2.想查看hx库的enjoy表大小,可以使用:

SELECT DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx' AND TABLE_NAME = 'enjoy_data';

返回:

+--------------------------+------------+
| DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+--------------------------+------------+
| 6979584 | 70113 |
+--------------------------+------------+

到此这篇关于MySQL数据库查看数据表占用空间大小和记录数的方法就介绍到这了。成功等于百分之一的灵感加上百分之九十九的汗水。更多相关MySQL数据库查看数据表占用空间大小和记录数的方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
centos7安装MySQL教程

MySQL常用SQL查询语句(含复杂SQL查询)

MySQL细数发生索引失效的情况

mysqlenum字段类型的谨慎如何使用

Mysql体系化探讨令人头疼的JOIN运算