MySQL如何查询数据库使用空间:方法与步骤详解
要查询MySQL数据库的使用空间,可以通过执行SQL语句直接获取数据表、数据库或整个实例的存储占用情况。核心方法是利用information_schema系统数据库中的TABLES表,结合聚合函数计算空间数据,查询所有数据库的总数据大小和索引大小,可使用以下语句:
SELECT
table_schema AS '数据库名',
SUM(data_length + index_length) / 1024 / 1024 AS '总空间(MB)',
SUM(data_length) / 1024 / 1024 AS '数据空间(MB)',
SUM(index_length) / 1024 / 1024 AS '索引空间(MB)'
FROM information_schema.TABLES
GROUP BY table_schema;
重点说明:

data_length表示数据占用的空间,index_length表示索引占用的空间,两者之和即为表的总空间。- 若需查询单个表的空间使用,可添加
WHERE条件筛选特定数据库和表名:SELECT table_name AS '表名', (data_length + index_length) / 1024 / 1024 AS '总空间(MB)' FROM information_schema.TABLES WHERE table_schema = '你的数据库名'; - 注意:
information_schema中的空间单位为字节,需转换为MB或GB以便阅读。
定期监控空间使用能避免磁盘不足导致的性能问题,建议结合MySQL工具(如SHOW TABLE STATUS)或运维脚本自动化查询,通过优化冗余数据、清理索引或归档历史表,可有效管理存储空间,提升数据库运行效率。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/17299.html发布于:2026-09-16





