MySQL 8.0 Reference Manual Including MySQL NDB Cluster 8.0

9.6.4 MyISAM Table Optimization

To coalesce fragmented rows and eliminate wasted space that results from deleting or updating rows, run myisamchk in recovery mode:

$> myisamchk -r tbl_name

You can optimize a table in the same way by using the OPTIMIZE TABLE SQL statement. OPTIMIZE TABLE does a table repair and a key analysis, and also sorts the index tree so that key lookups are faster. There is also no possibility of unwanted interaction between a utility and the server, because the server does all the work when you use OPTIMIZE TABLE. See Section 15.7.3.4, “OPTIMIZE TABLE Statement”.

myisamchk has a number of other options that you can use to improve the performance of a table:

For a full description of all available options, see Section 6.6.4, “myisamchk — MyISAM Table-Maintenance Utility”.