Sabendo o tamanho de seus dados é naturalmente útil. As ferramentas se tornaram mais fáceis ao longo dos anos e diferentes versões do MySQL, mas é algo que você deve verificar, independentemente da sua versão do MySQL.
Se você estiver executando uma versão antiga do MySQL (antes information_schema), então você ainda pode reunir esses dados usando "status da tabela Show e adicione o data_length ao index_length". O information_schema torna isso muito mais fácil, mas você é livre para usá-los sempre que quiser.
Tire proveito do comando pager para reunir apenas as informações que são depois.
Use o comando SHOW TABLE STATUS para reunir as informações relacionadas:
Redefinir o pager:
Tamanho da tabela = data_length + Index_length
Se você estiver executando uma versão antiga do MySQL (antes information_schema), então você ainda pode reunir esses dados usando "status da tabela Show e adicione o data_length ao index_length". O information_schema torna isso muito mais fácil, mas você é livre para usá-los sempre que quiser.
Tire proveito do comando pager para reunir apenas as informações que são depois.
[world]> pager egrep -h "Data_length|Index_length"
PAGER set to 'egrep -h "Data_length|Index_length"'
[world]> show table status like 'City'\G
Data_length: 409600
Index_length: 131072
1 row in set (0.00 sec)
[world]> pager
Default pager wasn't set, using stdout.
[world]> select 409600 + 131072 as Table_Size;
+------------+
| Table_Size |
+------------+
| 540672 |
+------------+
A mesma informação está disponível através do information_schema:
SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE,SUM(DATA_LENGTH+INDEX_LENGTH) AS size,SUM(INDEX_LENGTH) AS index_size
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA IN ('world') AND TABLE_NAME IN ('City') AND ENGINE IS NOT NULL
GROUP BY TABLE_SCHEMA, TABLE_NAME
TABLE_SCHEMA: world
TABLE_NAME: City
ENGINE: InnoDB
size: 540672
index_size: 131072
1 row in set (0.00 sec)
O ponto, prestar atenção e saber seus dados.