WordPress has become the leading blogging platform with good reason -- it's powerful, flexible, reliable and user-friendly. With the help of its comprehensive plugin system, WordPress is also amazingly extendable.
However, even the best application has its weaknesses, and one of the weakest features of a default WordPress installation is backup. The included backup system limits you to exporting posts, pages, comments, custom fields, categories and tags. What you don't get are backups of directories, files and databases -- without which, should disaster strike, you won't be able to get your WordPress site back up and running quickly.
Thankfully, there are plenty of plugins available to improve the WordPress backup solution. These range from single-minded database backup to more complete full-site backup.
Because the list of backup plugins is fairly lengthy, I have pared it down to 10 tools that I consider the most useful.
Most of these plugins are easy to install, simple to use and flexible enough to back up your database, your folders/files, your posts/comments/tags or your entire site. Some of these plugins need to be downloaded from a third-party service while others can be installed directly from WordPress.org. Some are free; others need to be paid for.
With that said, let's dig into these plugins and find out which is best suited to meet your needs.
WordPress 2.6 or later Price: $75 (2 licenses), $100 (10 licenses), $150 (unlimited licenses). Licenses include 1 year of support and upgrades.
BackupBuddy isn't quite as user-friendly as the rest of the plugins listed here. Whereas most of the others are almost immediately usable after installation, BackupBuddy requires a bit of care and feeding before you can back up your WordPress site.
Once the plugin is installed, you have to visit the settings page and configure your email recipients, storage limits, database table settings, file and directory exclusions, and compatibility options. In addition, remote locations (such as A3 or Dropbox), backup types, scheduling and more must be taken care of.
This seems like quite a lot to manage. But this is the most costly plugin on the list, so it should come as no surprise that it has an extensive feature set, which gives BackupBuddy more options and more flexibility. That -- along with an included 512MB of online storage space, the ability to back up everything on your site and the inclusion of a malware scan -- easily justifies the price for people who value those features. On top of that, BackupBuddy offers a quick at-a-glance information page that offers a good deal of information regarding your server, database, files and tools.
Beyond the bells and whistles offered in BackupBuddy, the single best feature is the ability to do a complete restore -- including the WordPress installation itself. In other words, should both your site and your WordPress install go down, a full restoration is just a matter of uploading your backup file and the importbuddy.php file (which is downloaded from within the plugin when doing a Migrate/Restore) to the document root of your Web server and then pointing your browser to the importbuddy.php file.
One caveat: If you're moving (rather than restoring) your site, you have to re-create the database -- using the same name as was used on the original site -- on the new server.
WordPress 3.0 or later Price: Free
Backup Scheduler allows you to schedule the backup of your entire WordPress site (files, folders and databases) with just a few quick clicks.
Once the plugin is installed, you tell Backup Scheduler when to back up, where to back up, what to back up and where to save it. Backups created by Backup Scheduler can be stored on a local site, sent by email or uploaded via FTP.
This simple backup plugin is usable by people with any experience level. Even newer users can take advantage of this tool, thanks to the included step-by-step instructions.
A handy feature: When you first install Backup Scheduler, you can do a quick backup by clicking the "Force a new backup" button -- a nice touch for anyone who needs some emergency security or an immediate backup. In addition, Backup Scheduler supports multipart zip files and offers an email notification system that will alert you upon successful backup.
A couple of caveats regarding Backup Scheduler: First, the plugin does not allow for any granularity within the scheduling. You can only schedule backups on the hour (using military time -- e.g., 1300 = 1 p.m.) and you must define the frequency (in days) of backups as an integer (1 being every day, 7 being once a week, etc.).
The second is that Backup Scheduler does not offer an integrated restore tool; the restoration of your backup will have to be done manually. Luckily, there are tools available to help restore this backup. For example, you can use a tool like phpMyAdmin to upload your database into the Web-based interface. To copy the remaining files/folders to the restore server, you would then use FTP to copy them to the target.
WordPress 2.8 or later Price: $9/month (1 site); $19/month (up to 3 sites); $39/month (up to 7 sites)
A proprietary service that can fully automate your WordPress backup solution, BlogVault will appeal to WordPress power users who don't want to be concerned with anything but the content of their site.
This plugin offers a test restore feature, which can serve as a simple sandbox solution to ensure a full-site restore succeeds. The test restore works by running a complete restore on the BlogVault test servers, so you can validate the restore before moving forward with your own site -- and you won't have to second-guess if a site will return to production state or fail.
In order to install the plugin, you must first sign up for either a free trial or a full-blown account, at which point you will be given a download link. Once the plugin is installed on your site, BlogVault begins the syncing process.
Until the site actually starts backing up, you will not see anything on your BlogVault dashboard; but once the sync begins, all of the BlogVault tools become available. With the plugin up and running, you are able to not only manage your backups, but your account as well.
Once the initial sync completes, BlogVault will monitor the site and continually back it up. But what really sets BlogVault apart from other backup tools are its restore features. Not only can you test a restore, you can easily set up an auto-restore or migrate your site to a different location.
BlogVault also allows you to upload a backup to Dropbox; a feature that can be found by clicking the History link (in your BlogVault dashboard) and then clicking Upload to Dropbox. Although BlogVault already does automatic off-site backups, it's still nice to have a copy of a backup located in your own personal cloud.
WordPress 3.4.2 or later Price: Free
Complete Central Backup is one of the fastest ways to back up your WordPress database from within your WordPress dashboard. Once installed, with a single click you can have a downloadable backup of your WordPress database. Although the plugin doesn't have the most intuitive layout, it only takes a moment to hover the cursor over its Action icons and then click to restore, delete or download a database.
Complete Central Backup
Though Complete Central Backup doesn't include a wealth of features, it does contain the ability to easily set up weekly database backups as well as send automatic emails to the site administrator of backup success, failure or change.
Currently, a weekly backup is the only scheduling option available. A more granular backup schedule is in the works, as well as the ability to browse your backups and back up off-site. According to the vendor, once the new features are considered stable, they will be added to the plugin in the standard repository.
If you're looking for one of the simpler ways to back up your WordPress database, this might be it. I found Complete Central Backup to offer one of the cleanest, easiest-to-use dashboards I've seen; it can be used by people with nearly any level of experience.
One word of warning, though: When running the restore via the dashboard, the site can wind up back at the installation screen. This happened to me during one of three restore attempts. I recommend testing the restore of the database on a non-production server first. If you do not have access to a non-production server, you can always do the restore through a tool like phpMyAdmin.
WordPress 2.8 or later Price: Variable; starts at 2 cents per 1GB per day plus 20 cents per 1GB transferred
If you're looking for a "set it and forget it" backup solution, MyRepono should be one of the first on your list. MyRepono is a paid service that offers remote automated WordPress site backups for nearly every aspect of your site (minus the WordPress core).
The backups are automatically encrypted on the MyRepono servers. If you need stronger security, you can opt to enable Rijndael 256-bit encryption, but only if your WordPress hosting server supports the mcrypt library/extension.
To set up your backup, you just create a MyRepono account, upload and install the plugin, and connect the plugin to your account by clicking the Connect Plugin button from within the MyRepono settings windows of your WordPress site. You then enter your account credentials (in the popup window) and click Connect.
With the plugin connected, you can begin to configure what you want to back up, choose the frequency of backups, configure the database information and even create specific profiles for different backup jobs (a handy feature for anyone who might want to set up different types of backups with varying schedules).
The MyRepono plugin pricing is a bit different than most other off-site backup services. Here's how it works: You pay into a balance (minimum of $5 USD); as you use the service, charges are deducted from your account (based on your usage). When the account balance is zero, you top off your account with more funds.
Cost starts at roughly 2 cents per day per 1GB for storage and 20 cents per 1GB of data transferred. (MyRepono has a chart that offers cost estimates.) New users get a $5 credit.
WordPress 2.8.6 or later Price: Free
This is an outstanding plugin that features nearly everything you need for full-blown, time saving, disaster-recovery WordPress backup. Along with a solid feature set, Online Backup for WordPress comes with free online storage (up to 100MB) as well as a friendly, monitored support forum.
Online Backup for WordPress
Even better, Online Backup for WordPress offers encryption, and that alone makes it worth an extended look. If you're concerned about the sensitivity of your data, or simply want to prevent anyone from snagging your bread and butter, the ability to encrypt those backups will be a big draw.
The encryption is not set by default, but fortunately is easy to configure. From within the General Settings tab you select the encryption type and then set an encryption key. (Make sure you document the key -- should you forget it, your backups cannot be recovered.)
Once installed, Online Backup for WordPress can be managed by going to Tools > Online Backup. You will need to walk through a few simple tabs in order to get your backup configured. One nice addition lies in the Overview tab, where you are presented with a configuration checklist. This list will outline exactly what you have left to set up so your backup will successfully run.
WordPress 3.2 or later Price: Free; premium add-ons available
UpdraftPlus helps to make backing up your WordPress site simple. With just a few clicks, your content and databases can be backed up to a cloud service (Amazon S3, Dropbox or Google Drive) as well as to FTP and email.
This particular plugin supports backing up of plugins, themes, uploads and any other content found within the wp-content folder. UpdraftPlus allows you to back up files and databases on separate schedules, and failed uploads are automatically either resumed or retried. There is also a simple exclude feature that enables you to configure the exclusion of directories or files.
UpdraftPlus not only offers a one-click restore, it offers backup encryption, so you can rest assured your content is safe from prying eyes. Unlike Online Backup for WordPress, UpdraftPlus does not allow you to choose the encryption type (it uses Rijndael ); however, you do have to set the encryption phrase.
The default plugin is free. You can purchase a variety of add-ons that remove ads ($10), offer support for multiple sites ($25), give you access to user support ($25) or let you schedule backups ($10). The Premium package offers all of these for $55.
The only limitation to UpdraftPlus is that it does not back up the WordPress core. This means you will need to re-install WordPress should something catastrophic happen. But once you have the core installed, you can then restore your WordPress site with one simple click.
WordPress 2.9.2 or later Price: Starts at $15/month
This is a proprietary service (plans start at $15 per month ) that allows you to back up your WordPress content in real time -- so should your site crash and burn, you always have an up-to-date restore at your fingertips -- a crucial feature for sites that update regularly and often.
VaultPress features a dashboard that gives you instant access to a real-time view of the status of your backup. For Premium Subscribers (who pay $40/month), VaultPress also regularly scans the site for suspicious code. Should any malicious or suspect code be found within a WordPress site, the administrator will be notified.
During the testing, VaultPress did notify me of a piece of suspect code -- the Xcloner.php code left over from XCloner (another WordPress plugin I tested for this article), which contained the php.system.globals pattern often used in malicious shell scripts. Because I knew the code was safe, I could click the Ignore Warning button. Had I been unsure, it would be necessary to manually examine the code -- or take advantage of VaultPress' Concierge service, which is available with the VaultPress Premium and Enterprise plans and provides security and backup specialists who can help with initial setup, backups, restoration of data or security issues.
WordPress 3.0 or later Price: Free
This simple plugin allows you to back up your WordPress site files and databases directly into your Dropbox account. Since Dropbox allows you to sync your data to multiple machines, WordPress Backup to Dropbox makes for a pseudo-redundant backup solution.
WordPress Backup to Dropbox
Once the plugin has uploaded your backup to your Dropbox account, the backup will then sync with all devices associated with the account. With this solution, you could easily restore your WordPress site from any machine with access to your Dropbox account.
After WPB2D is installed, you have to authorize the plugin to access your Dropbox account. Upon successful authentication, the backup configuration appears, and you need only set up the day, time and frequency. For anyone concerned with security, the WordPress Backup to Dropbox plugin takes advantage of OAuth (an open standard that allows end users to grant authentication privileges to third-party providers), so Dropbox credentials aren't retained on a third-party server.
The one caveat to WPB2D is the size limitation in the Dropbox free accounts. Should your WordPress backup exceed the 2GB limit, your backup will fail. In that case, you will need to purchase additional storage from Dropbox.
WordPress 2.0 or later Price: Free
XCloner is a third-party PHP/MySQL backup application that also includes a WordPress plugin. With XCloner you can back up every aspect of your WordPress site and restore to any server that supports WordPress.
XCloner's restore tool works in similar fashion to BackupBuddy: Create a full backup (or select a previously created backup), clone the backup, enter the FTP details for the target server, submit the files to the target, point a browser to http://address-of-target-server/Xcloner.php and walk through the restore wizard.
Unfortunately, the free version of XCloner doesn't offer much in the way of direct support. However, there is a community-driven forum where you can post questions, which are answered fairly quickly. If you need a more commercial approach to support, XCloner can oblige for 9.95 euros/month, 49.95 euros/year or 99.95 euros for unlimited support.
If your WordPress site contains sensitive data, XCloner does provide a built-in security layer. There is one caveat, though: Even with the backup encrypted, XCloner stores the backup with permissions set in such a way that anyone can download the file (so long as they have access to the directory containing the backup file). You are better off storing your backup outside of the document root of your Web server (configured in the "Backup store path" option in the General tab of the XCloner setup).
Read more about web apps in Computerworld's Web Apps Topic Center.