Warning: Declaration of thesis_comment::start_lvl(&$output, $depth, $args) should be compatible with Walker::start_lvl(&$output, $depth = 0, $args = Array) in /home/directm7/public_html/wpblogger/wp-content/themes/thesis/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::end_lvl(&$output, $depth, $args) should be compatible with Walker::end_lvl(&$output, $depth = 0, $args = Array) in /home/directm7/public_html/wpblogger/wp-content/themes/thesis/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::start_el(&$output, $comment, $depth, $args) should be compatible with Walker::start_el(&$output, $object, $depth = 0, $args = Array, $current_object_id = 0) in /home/directm7/public_html/wpblogger/wp-content/themes/thesis/lib/classes/comments.php on line 0

Warning: Declaration of thesis_comment::end_el(&$output, $comment, $depth, $args) should be compatible with Walker::end_el(&$output, $object, $depth = 0, $args = Array) in /home/directm7/public_html/wpblogger/wp-content/themes/thesis/lib/classes/comments.php on line 0
Birth Control for Your Blog (or How to Backup WordPress) - WPblogger | WPblogger

Birth Control for Your Blog (or How to Backup WordPress)

by Ben Cook on August 20, 2009

Birth Control for Your Blog

One of the most important lessons my mother taught me growing up was the one she repeated most often…

“When it comes to protection,” she’d say, “the key is multiples, multiples, multiples!”

If one is good, mom reasoned, 3 would be better. And, while her intent at the time was to avoid having grandchildren before she hit 50, she was in fact teaching me an important lesson that applies to many areas of life including blogging.

As any teenage soon to be parent will attest, you might never think it will happen to you, but it only takes once to really mess things up.

No, you don’t have to worry about getting knocked up online, but if your blog gets hacked, your web server crashes, or a Russian virus wipes out your web host’s database, your blogging life as you know it could change forever.

So what forms of protection should you use? Just like in the real world the only fool proof method is abstinence. But since staying off line would sort of defeat the purpose of blogging, here are 3 methods that when combined are 99.99% effective.

WordPress Database Backup

Much like birth control, backing up a blog (or data of any kind for that matter) seems to be one of those things that if it’s not easy & convenient, people just won’t use it.

Thankfully, there are couple of plugins that automate the WordPress backup process. WordPress Database Backup by Austin Matzko, oddly enough, allows you to create on demand backups of your WordPress databases including any that have been created by plugins you use.

WordPress database backup options

WordPress database backup options

As you can see in the image above, the plugin also allows you to schedule automatic backups and email them to a location of your choice.

I’ve selected to backup the database once a day and instead of storing the backups on my own machine, I opt to send them to my gmail account to take advantage of the enormous amounts of storage space they assign to each account.

Not only does this preserve my hard drive space, but I’m also protected should anything ever happen to my local machine. While Gmail certainly isn’t infallible, I figure if Google’s backbone of servers goes down, there’s probably bigger things to worry about than my blog backups.

WordPress Backup

Now that we’ve taken care of our databases, the only thing left to backup are the actual files themselves. While most of the WordPress files remain static, customized files such as the images you upload, the plugins you install, and your theme files all need to be backed up on a regular basis.

To automate that task, I turn to the WordPress Backup plugin which, you guessed it, allows you to create scheduled backups of your Upload, current theme, and Plugins directories.

options for the WordPress Backup plugin

options for the WordPress Backup plugin

Once again, you can select the frequency of the backups and send them to an email account. In addition, the plugin creates zip files that can be downloaded on demand by simply clicking a link in the control panel.

With both of these plugins installed and scheduled to run on a regular basis, you should never need this last option. Of course, sometimes strange things happen and it never hurts to have a last line of defense.

Web Host Backups

Having to rely on your web host’s backups is like having to take the morning after pill. Sure you’ll probably avoid a major catastrophe, but it’s going to cost you and there could still be some damage done.

Any quality web host will regularly backup their data, but it never hurts to check before signing up. You should also ask about the availability of those backups. Hostgator for example, does weekly backups but offer no guarantees on their backups, and will charge you a $15 fee should you need to use their file.

And, if the problem you’re dealing with is due to a problem with your host, you never know what backups will be available to you or when.

While you certainly want to make sure your host can act as a last line of defense, you’re much better off taking the proper precautions before hand.

Better Safe than Sorry

Just about every blogger I know has had to deal with a hack or an attack of some type. And, while they’re never fun or enjoyable, your life will be a LOT easier if you take a few minutes to set up the simple methods of prevention.

Install the plugins, backup your site before upgrading WordPress for the 19th time this month, and store your backups in multiple places in case your local machine were to suffer some sort of failure.

“Multiples, multiples, multiples!” was my mothers mantra, and while I’d certainly never admit at the time, mothers really do know best.

Image Source: http://www.flickr.com/photos/peachy92/

{ 6 comments… read them below or add one }

Jeff October 1, 2009 at 1:40 pm

For database backups, I’ve been using WP-DBManager from Lester Chan.

http://lesterchan.net/portfolio/programming/php/

Not only can you schedule backups but you can repair and optimize your DB all from within the dashboard.

Emily Geizer February 9, 2010 at 12:59 pm

Thank you for this very clear and thorough explanation! It’s been the easiest one for me to understand so far, and I have been reading reams on this subject over the past day.

The one problem that I am having is that my site is not activating the WP Database Backup. The first time I tried it said the header was broken and the 2nd time it told me there were system errors, or some such nonsense.

I’m heading over to that plug-ins support forums to try to resolve the issue, but currently a little frustrated that this “easy” process is so challenging!

Ben Cook February 9, 2010 at 1:40 pm

Emily, I’m glad you found the post useful.

Without seeing the errors it’s difficult to tell what’s going on but I’ve only had problems with WP Database Backup due to a slow connection.

The stuff you’re describing sound like it’s not working with another one of your plugins well or something along those lines. You might want to deactivate any other type of backup plugins while you try to run it and see if that doesn’t help.

Emily Geizer February 9, 2010 at 1:51 pm

Ben,

Thanks for these thoughts.

I only have a few other plug-ins (Akismet, Subscribe to Comments, WP Stats, Add to Any). Here is what the error said: “Destination folder already exists. /home/childper/public_html/wp-content/plugins/wp-db-backup/
Plugin Install Failed.”

I have an email into Austin, so we’ll see what he says.

Stephen Jeske February 9, 2010 at 4:23 pm

Ben, are you using the Wordpress Backup Plugin with the latest version of Wordpress? I was going to download the plugin but got notified that it hasn’t been tested with the latest versionof WP (which I’m running). Wondering if this is a big deal or not?

Ben Cook February 9, 2010 at 4:36 pm

Stephen, yeah I have the latest version running & haven’t had any issues with it. I’m guessing the plugin dev just hasn’t verified that it works for the latest version cause it’s seamless for me.

Previous post:

Next post: