Você está usando o InnoDB. Infelizmente, em sua configuração padrão, o InnoDB nunca devolve o espaço em disco a menos que você esteja usando innodb_file_per_table
, nesse caso o espaço em disco pode ser re-reivindicado executando optimize table foo
.
Se você não estiver usando innodb_file_per_table
, será necessário fazer o seguinte:
- Use
mysqldump
para despejar seus bancos de dados em um arquivo. - Descarte seus bancos de dados.
- Pare o mysql.
- Exclua seus arquivos innodb (ou mova-os para outro lugar).
- Inicie o mysql.
- Recrie seus bancos de dados e importe novamente do arquivo mysqldump.
Escusado será dizer que é melhor certificar-se de que tem um backup muito bom antes de o fazer. Além disso, considere a possibilidade de ativar innodb_file_per_table
enquanto o mysql estiver parado.