MySQL查看数据库表容量大小

warning: 这篇文章距离上次修改已过478天,其中的内容可能已经有所变动。

今天主要介绍MySQL查看数据库表容量大小的几个方法,仅供参考。下面,我们一起来看。

1.查看所有数据库容量大小

SELECT 
    table_schema AS '数据库', 
    sum( table_rows ) AS '记录数', 
    sum( TRUNCATE ( data_length / 1024 / 1024, 2 ) ) AS '数据容量(MB)', 
    sum( TRUNCATE ( index_length / 1024 / 1024, 2 ) ) AS '索引容量(MB)',
    sum( TRUNCATE ( (data_length+index_length) / 1024 / 1024, 2 ) ) AS '总容量(MB)'
FROM 
    information_schema.TABLES  
GROUP BY 
    table_schema  
ORDER BY 
    sum( data_length ) DESC, 
    sum( index_length ) DESC; 

2.查看所有数据库各表容量大小

SELECT 
    table_schema AS '数据库', 
    table_name AS '表名', 
    table_rows AS '记录数', 
    TRUNCATE ( data_length / 1024 / 1024, 2 ) AS '数据容量(MB)', 
    TRUNCATE ( index_length / 1024 / 1024, 2 ) AS '索引容量(MB)'  
FROM 
    information_schema.TABLES  
ORDER BY 
    data_length DESC, 
    index_length DESC; 

3.查看指定数据库容量大小

SELECT 
    table_schema AS '数据库', 
    sum( table_rows ) AS '记录数', 
    sum( TRUNCATE ( data_length / 1024 / 1024, 2 ) ) AS '数据容量(MB)', 
    sum( TRUNCATE ( index_length / 1024 / 1024, 2 ) ) AS '索引容量(MB)',
    sum( TRUNCATE ( (data_length+index_length) / 1024 / 1024, 2 ) ) AS '总容量(MB)' 
FROM 
    information_schema.TABLES  
WHERE 
    table_schema = 'mysql'; 

4.查看指定数据库各表容量大小

SELECT 
    table_schema AS '数据库', 
    table_name AS '表名', 
    table_rows AS '记录数', 
    TRUNCATE ( data_length / 1024 / 1024, 2 ) AS '数据容量(MB)', 
    TRUNCATE ( index_length / 1024 / 1024, 2 ) AS '索引容量(MB)',
    TRUNCATE ( (data_length+index_length) / 1024 / 1024, 2 ) AS '总容量(MB)'
FROM 
    information_schema.TABLES  
WHERE 
    table_schema = 'mysql'  
ORDER BY 
    data_length DESC, 
    index_length DESC; 

5.查看指定数据库各表和索引容量大小

SELECT table_name AS "表名",
round(((data_length + index_length) / 1024 / 1024), 2) "总大小(MB)"
FROM information_schema.TABLES
WHERE table_schema = 'mysql'
ORDER BY (data_length + index_length) DESC;
最后修改于:2021年03月12日 15:59

添加新评论