数据从information_schema.tables表中获取,对data_length和index_length字段(byte)求和, 换算为GB单位。
select table_schema as db, sum(data_length + index_length) / 1024 /1024 / 1024 as db_size_gb from information_schema.tables group by table_schema;
再求各库的总和:
select sum(db_size_gb) as total_gb from (select table_schema as db, sum(data_length + index_length) / 1024 /1024 / 1024 as db_size_gb from information_schema.tables group by table_schema ) as db_usage ;