Choose right WordPress plugin from thousands others in a moment
Optimize Database after Deleting Revisions
It deletes the redundant revisions of posts and pages, trashed items and/or spammed items and, after that, optimizes all database tables. Short review is available here.
This plugin is a ‘One Click’ WordPress database cleaner & optimizer, with precise revision cleanup and flexible scheduling.
Main Features
Deletes revisions of posts, pages and / or custom post types (you optionally can keep an ‘x’-amount of the most recent revisions and you can choose to delete revisions older than…)
Deletes trashed posts, pages and comments (optional)
Deletes spammed comments (optional)
Deletes unused tags (optional)
Deletes ‘expired or all transients’ (optional)
Deletes ‘pingbacks’ and ‘trackbacks’ (optional)
Clears the ‘OEMBED cache’ (optional)
Deletes ‘orphan postmeta items’
Optimizes the database tables (optionally you can exclude certain tables, or even specific posts/pages, from optimization)
Creates a log of the optimizations (optional)
Optimization can be scheduled to automatically run once hourly, twice daily, once daily or once weekly at a specific time (optional)
‘Optimize DB (1 click)’ link in the admin bar (optional)
‘Optimize Database’ Icon in the admin menu (optional)
MULTISITE compatible: optimizes all sites in the network with one click
Settings
You can find the settings page in the WP Admin Panel » Optimize Database -or- via the WP Admin Panel » Optimize Database icon (depends on settings)
Excluding specific posts/pages from deleting revisions
If you want to keep revisions for a specific post/page (no matter what the other settings are), create a custom field named ‘keep_revisions’ for that post/page and give it the value ‘Y’
Starting the Analysis / Optimization
You can start the Optimization in the WP Admin Panel » Optimize Database.
Note: if you use the Scheduler the Optimization will run automatically!
Note: you also can click the ‘Optimize DB (1 click)’ link in the admin bar (if enabled)
You can click one of the following buttons:
‘Analyze (summary): analyzes the database and gives the count of what will be cleaned
‘Analyze (detail): analyzes the database and gives a detailed report of what will be deleted
‘Optimize (summary): actually deletes the items and gives the count of what has been deleted
‘Optimize (detail): actually deletes the items and gives a detailed report of what has been deleted
Multisite Support
Install the plugin as Network Administrator (Network Admin » Plugins)
‘Network Activate’ the plugin
You only can configure and run the plugin on the main network site, but it will optimize ALL the sub-sites too!
Running the plug in from a Unix crontab
In case you cannot use WPCron, but you can edit the Unix crontab:
Create a .php file, in the root directory of your site, with:
<?php
define(‘RUN_OPTIMIZE_DATABASE’, true);
require_once(‘wp-load.php’);
?>
Change the settings in the WP Admin Panel » Settings » Optimize Database -or- via the WP Admin Panel » Optimize Database icon (depends on settings)
How do I run this plugin?
Go to: Dashboard » Tools &araquo; Optimize Database. Then click the ‘Start Optimization’-button -or- via the WP Admin Panel » Optimize Database icon (depends on settings)
Click the ‘Optimize DB (1 click)’ link in the Admin Bar (if enabled)
How do I run the Analyzer?
Go to: Dashboard » Tools » Optimize Database and click the ‘Analyze Database’ button
Why do I see ‘InnoDB table: skipped…’?
That’s because optimizing InnoDB tables is not really efficient, so change the table type to MyISAM to have them being optimized.
Update: if you want to optimize your InnoDB tables too, just check the ‘Optimize InnoDB tables too’ option on the settings page
IMPORTANT: optimizing InnoDB tables, might increase the size of the database! However, it will speed up the performance of the database
After I ran the plugin, I got “Total savings since the first run: -64 KB”
Sometimes that happens when you optimize InnoDB tables (instead of MyISAM tables).
Optimizing InnoDB tables works differently than MyISAM.
InnoDB focuses on speed optimization and sometimes it means the database can grow a little.
I scheduled the optimization for 8pm but it runs at 6pm (my local time)
The scheduler uses the local time of the web server which can differ from your own local time
The plugin is visible in Main Site Tools but not in my subsites
Multisite Support
– Install the plugin as Network Administrator (Network Admin » Plugins)
– ‘Network Activate’ the plugin
– You only can configure and run the plugin on the main network site, but it will optimize ALL the sub-sites too!
BUG FIX: empty lines removed from output (gave problems with some RSS feeds)
2.7.5 [12/13/2013]
CHANGE: two queries optimized for better performance
2.7.4 [12/11/2013]
BUG FIX: added ‘backticks’ around the database name in a few queries
2.7.3 [12/09/2013]
BUG FIX: deleted some CR/LF’s from the end of the plugin sigh
2.7.2 [12/09/2013]
BUG FIX: forgot to delete a debug item… oops! sorry!
2.7.1 [12/09/2013]
BUG FIX: query and depreciated item (mysql_list_tables) fixed
2.7 [12/06/2013]
NEW: deletion of expired transients (optional)
2.6 [07/22/2013]
NEW: deletion of unused tags (optional)
2.5.1 [05/24/2013]
BUG FIX: some short tags removed
CHANGE: schedule time is only relevant and therefore only shown for ‘daily’ and ‘weekly’ schedules
NEW: option to turn the ‘1-click’ button in the admin bar on/off
2.5 [05/24/2013]
NEW: you can set a time (hour) for the scheduler to run (thanks to frekel)
NEW: ‘1-click run button’ in the admin bar (thanks to JB ORSI)
2.3.1 [05/03/2013]
BUG FIX: fixed a problem with ‘invalid header’ (during installation)
2.3 [04/26/2013]
BUG FIX: fixed the ‘Stealing Cron Schedules’ issue
2.2.9 [04/10/2013]
BUG FIX: bug fix for the ‘check all NON-WordPress tables’ link
2.2.8 [03/19/2013]
BUG FIX: bug fix for deleting Post Orphans
2.2.7 [03/18/2013]
NEW: ‘Orphan Post items’ (like ‘Auto Drafts’) will be automatically deleted too now (thanks to: 0izys)
2.2.6 [03/05/2013]
Text change: ‘logging on’ changed to ‘keep a log’ (thanks to: Neil Parks)
NEW: number of orphans deleted now also shown in the log file
NEW: ‘Go To Optimizer’ button on settings page (thanks to: RonDsy)
2.2.5 [02/20/2013]
Bug fix: fixed an (innocent) PHP warning (in error.log)
2.2.4 [02/12/2013]
Bug fix: error corrected in readme.txt file
2.2.3 [02/09/2013]
Bug fix: fixed an (innocent) PHP warning (in error.log)
2.2.2 [01/20/2013]
Bug fix: deleting of postmeta orphans didn’t work correctly
2.2.1 [01/17/2013]
Bug fix: fixed some debug warnings
2.2 [01/11/2013]
NEW: ‘Orphan Postmeta items’ will be automatically deleted
NEW: the possibility to exclude tables from Optimization (for instance for ‘heavy traffic’ tables)
2.1 [01/04/2013]
Bug fix: keeping a maximum number of revisions didn’t work correctly
2.0 [12/18/2012]
NEW: Logging of the Optimizations (optional)
NEW: Scheduling Optimizations for Automatic Execution (optional)
Many other (technical and cosmetical) changes and improvements
1.3.4 [12/14/2012]
Changed the buttons for WP 3.5
1.3.3 [12/01/2012]
Some layout changes
1.3.2 [11/14/2012]
Shows more information about the optimized tables + other minor changes
1.3.1 [10/07/2012]
Minor changes
1.3 [10/06/2012]
Extra button for starting optimization, shows savings (in bytes) now
1.2 [10/03/2012]
Major update: new options ‘delete trash’, ‘delete spam’, ‘only optimize WordPress tables’
1.1.9 [09/27/2012]
Using a different method for retrieving database table names
1.1.8 [09/08/2012]
Another link fix
1.1.7 [09/03/2012]
Some textual and link fixes
1.1.6 [09/01/2012]
Fixed the link to the settings page
1.1.3 [09/01/2012]
Moved the ‘Optimize DB Settings’ item to Dashboard ‘Settings’ Menu and the ‘Optimize Database’ item to the Dashboard ‘Tools’ Menu. That makes more sense!
1.1.2 [08/30/2012]
Minor bug fix for the new option page
1.1 [08/29/2012]
Added: a new option page, in de plugins section, where you can define the maximum number of – most recent – revisions you want to keep per post or page
1.0.5 [08/21/2012]
Depreciated item (‘has_cap’) replaced, abandoned line of code removed