查看数据库中每个表占用的空间大小
上一篇 /
下一篇 2016-11-22 16:18:41
/ 个人分类:数据库
如果想知道MySQL数据库中每个表占用的
空间、表
记录的行数的话,可以打开MySQL的 information_schema 数据库。在该库中有一个 TABLES 表,这个表主要字段分别是:
TABLE_SCHEMA : 数据库名
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小
其他字段请参考MySQL的手册,我们只需要了解这几个就足够了。
所以要知道一个表占用空间的大小,那就相当于是数据大小 + 索引大小即可。
实例:
//先进去MySQL自带管理库:information_schema
//自己的数据库:
test//自己的表:
test1 mysql
>selectconcat(round(sum(data_length/1024/1024),2),'MB')asdata_length_MB, concat(round(sum(index_length/1024/1024),2),'MB')asindex_length_MBfromtableswheretable_schema='test'andtable_name='test1';+----------------+-----------------+
|data_length_MB
|index_length_MB
|+----------------+-----------------+
|158.67MB
|224.86MB
|+----------------+-----------------+
1row
inset(
0.03sec)
查看当前用户每个表占用空间的大小:
select segment_name,sum(bytes)/1024/1024 from user_extents group by segment_name
查看每个表空间占用空间的大小:
select tablespace_name,sum(bytes)/1024/1024 from dba_segments group by tablespace_name
相关阅读:
- SQL语句汇总(方便粘贴sqlite语句) (zaza9084, 2016-11-11)
- 八年数据库之路的感悟 (zaza9084, 2016-11-14)
- 存储及查询无限级分类的数据库设计 (zaza9084, 2016-11-15)
- Oracle与MySQL共同打造高效可靠的数据库架构体系 (zaza9084, 2016-11-15)
- 在SQL存储过程中给条件变量加上单引号 (zaza9084, 2016-11-16)
- 前端学数据库之基础操作 (zaza9084, 2016-12-13)
- SQL Server中,varchar和nvarchar如何选择? (zaza9084, 2016-11-18)
- 算法为王的SQL优化 (zaza9084, 2016-11-18)
- Sql Server 2008单个存储过程统计多个信息 (zaza9084, 2016-11-21)
- MySQL数据库的高可用性分析 (zaza9084, 2016-11-22)
收藏
举报
TAG:
数据库
空间