牛骨文教育服务平台(让学习变的简单)
博文笔记

查看数据库各表的大小

创建时间:2016-11-07 投稿人: 浏览次数:174

转自:http://www.111cn.net/database/mysql/53890.htm

http://blog.csdn.net/atec2000/article/details/7041352

information_schema 库的 TABLES 表,主要字段分别是:

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

INDEX_LENGTH:索引大小


要想知道每个数据库的大小的话,步骤如下:

1、进入information_schema 数据库(存放了其他的数据库的信息)

use information_schema;

 

2、查询所有数据的大小:

select concat(round(sum(data_length/1024/1024),2),"MB") as data from tables;

 

3、查看指定数据库的大小:

比如查看数据库home的大小

select concat(round(sum(data_length/1024/1024),2),"MB") as data from tables where table_schema="home";

 

4、查看指定数据库的某个表的大小

比如查看数据库home中 members 表的大小

select concat(round(sum(data_length/1024/1024),2),"MB") as data from tables where table_schema="home" and table_name="members";



在需要备份数据库里面的数据时,我们需要知道数据库占用了多少磁盘大小,可以通过一些sql语句查询到整个数据库的容量,也可以单独查看表所占容量。

  1、要查询表所占的容量,就是把表的数据和索引加起来就可以了

select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables 
where table_schema="数据库名";
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。