DB maintenance optimizes administrator-selected tables in the database during regular cron.php executions. For MyISAM tables, OPTIMIZE TABLE repairs a table if it has deleted or split rows, sorts table indexes, and updates table statistics. For BDB and InnoDB, OPTIMIZE rebuilds the table. Note, MySQL locks tables during the time OPTIMIZE TABLE is running.

OPTIMIZE works best on tables with large deletions (e.g. cache or watchdog), however MySQL will reuse old record positions, therefore in most setups, OPTIMIZE TABLE is unnecessary unless you just like defragmenting. The Overhead column in phpMyAdmin's database view is the most common way to determine the need of an OPTIMIZE TABLE query. It essentially shows the amount of disk space you would recover by running an optimize/defragmentation query.

Think of OPTIMIZE TABLE like defragmenting your hard drive. Sure your system will run without it, and it might even be fast, but isn't it nice to run a defrag when you can?

6.x+ PostgreSQL support: Per PostgreSQL documentation's recommendation, this module does not use the VACUUM FULL operation that locks the tables; this module can operate in parallel with normal reading and writing of PostgreSQL tables.

If you are using prefixed tables you will need to upgrade to 6.x-1.2, 7.x-2.2, 8.x-1.2 for this module to work correctly.

Similar project: OptimizeDB.


7.x-2.x branch is released. The module has been completely rewritten in object-oriented Drupal 8 style. This is an intermediate stage for Drupal 8 module version. For Drupal 8 OOP (Object Oriented Programming) style in Drupal 7 version X Autoload module >=7.x-5.0 is required. Module functionality remains the same. 7.x-2.x is in good shape. It is in yellow color just for not to force to update people, who are OK with 7.x-1.x. If it's not broke, don't fix it. But new development is in 7.x-2.x.

Please test the 7.x-2.x version on non-production sites first.


Drupal 8 version of the module is available. It is a 7.x-2.x version upgraded to D8. Module functionality remains the same.

Project information