davidsommer
1/17/2014 - 12:25 PM

Mysql Table size

Mysql Table size

SELECT CONCAT(table_schema, '.', table_name),
       CONCAT(ROUND(table_rows / 1000000, 2), 'M')                              rows,
       CONCAT(ROUND(data_length / ( 1024 * 1024  ), 2), 'MB')                   DATA,
       CONCAT(ROUND(index_length / ( 1024 * 1024 ), 2), 'MB')                   idx,
       CONCAT(ROUND(( data_length + index_length ) / ( 1024 * 1024 ), 2), 'MB') total_size,
       ROUND(index_length / data_length, 2)                                     idxfrac
FROM   information_schema.TABLES

-- WHERE table_schema = 'YOUR DATABASE NAME'

ORDER  BY data_length + index_length DESC;