可以使用以下两个SQL查询来获取单表占用的空间和索引占用的空间:

  1. 查询单表占用的空间:
SELECT 
    table_name AS '表名',
    round(((data_length + index_length) / 1024 / 1024), 2) AS '总空间(MB)',
    round((data_length / 1024 / 1024), 2) AS '数据空间(MB)',
    round((index_length / 1024 / 1024), 2) AS '索引空间(MB)'
FROM information_schema.tables
WHERE table_schema = 'your_database_name'
    AND table_name = 'your_table_name';

your_database_name替换为你的数据库名,your_table_name替换为你的表名。

  1. 查询索引占用的空间:
SELECT 
    table_name AS '表名',
    index_name AS '索引名',
    round((index_length / 1024 / 1024), 2) AS '索引空间(MB)'
FROM information_schema.tables
JOIN information_schema.statistics USING (table_schema, table_name)
WHERE table_schema = 'your_database_name'
    AND table_name = 'your_table_name'
GROUP BY table_name, index_name;

同样将your_database_name替换为你的数据库名,your_table_name替换为你的表名。

这两个查询将返回相应的表名、总空间、数据空间和索引空间信息

mysql sql查询单表占用多少空间以及索引所占空间

原文地址: https://www.cveoy.top/t/topic/iRp5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录