MySQL-如何统计数据库的大小?

服务器管理 服务器管理 主题:1035 回复:2217

MySQL-如何统计数据库的大小?

瑾兮 发布于 2017-10-24 字数 121 浏览 1097 回复 2

由于以前设计的数据库不是合理,既有innodb又有myisam存储引擎的表,现在想知道统计整个数据库占用的空间,请问如何处理?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

瑾兮 2017-10-28 2 楼

可以直接查询information_schema中的tables表:

数据大小:

SELECT sum(DATA_LENGTH) FROM information_schema.tables WHERE table_schema='xxx'

索引大小:

SELECT sum(INDEX_LENGTH) FROM information_schema.tables WHERE table_schema ='xxx'

所以数据大小与索引大小加起来就是数据的占用的空间:

 SELECT sum(DATA_LENGTH) + sum(INDEX_LENGTH) FROM information_schema.tables WHERE table_schema='xxx'

查询结果为字节。

浮生未歇 2017-10-25 1 楼

 SELECT table_schema "DB Name", sum( data_length + index_length ) / 1024 / 1024 "DB Size in MB"
FROM information_schema.TABLES GROUP BY table_schema ;