Post 1 placeholder image

Set Up and Automate Backup of Your WordPress Site

Overview

Even when you have your site on a reliable hosting service and take care to regularly update your core and plugins, things can happen where you may want a backup of your files and data to restore to a previous version from a day, week, or even longer ago. Especially since setting up automated backups can be an easy and quick process, doing it can save you time and frustration later.

Some Benefits of Having a Backup of your WordPress Website (or any website)

  • You installed or updated a plugin and broke your site
  • You accidentally deleted some content or configuration permanently
  • Your site got hacked, and now it’s in a language you can’t read
  • You want to migrate your site to a different host
  • You forgot to renew your hosting service, and your site got deleted
  • You want a piece of mind knowing your site and content is saved somewhere in case anything goes wrong
  • You want to try restructuring your site and have the option of restoring to a previous state if you change your mind

There are many other reasons. I had to rebuild sites many times, and it became really difficult when a backup didn’t exist or one existed but from many moons ago.

What to Back Up

Before we dive into the “how”, it’s good to be clear on what exactly will be backed up. In short, the answer is probably “entire site”, but it’s good to know the various components, as they can vary from one CMS to another and each component is not necessarily going to go through the same process when getting backed up or restored.

A WordPress site is composed of content, settings, templates, and code for the core, theme, and plugins. Usually, these are on the same server, but they can be on different servers or cloud spaces.

Export of WordPress Database

You will most likely want an export of the database, which includes page and post content, as well as plugin, theme, and core WordPress settings.

Backup Files

The following are the main sections of a WordPress site in terms of the files:

  • Core WordPress files for functionality
  • Core WordPress files for configuration
  • Plugins
  • Themes
  • Uploads
  • Cache and dynamically generated assets

When to Back Up Your WordPress Site

I think this might come down to two main things:

  1. how often your site gets updated
  2. how important is that which gets updated

If you are editing your posts on a daily basis, have users submitting comments and forms frequently that are getting stored on the site, and maybe even more importantly, if you’re running an eCommerce site that allows customers to submit orders for products, you probably want to do backups very often, as a lost order placed by a customer might not be as easy to recreate as a lost post you copied and pasted from some source that you can just go back and copy from again. So, daily backups might be appropriate for these scenarios of frequent updates and when the data isn’t as easy to recreate, but for someone who runs a blog only they update once every few months, it probably would be overkill to do daily backups. Weekly or monthly backups might make more sense then.

Of course, there might be some extreme conditions that warrant backups even more often than daily. In these cases, you may need to utilize partial backups or keep multiple synced copies of the data and files in parallel, especially if the full backup takes longer to run than the frequency that you need it to run. These strategies are probably not needed for most people, so I won’t get into them in this article, but it may be helpful to know that you can really take this to a serious level.

How to Set Up Backups

There are several approaches that can be taken.

Use Tools Provided by the Hosting Service

Effort Needed: Low - mostly automated and can be managed through the hosting admin panel

Added Cost: Low - many providers offer this for free or for very little extra

Reliability: High - managed thru the hosting panel, so unless the hosting panel is down, you should be able to do backups/restores

Your hosting provider should already have their own tools for backing up your site that may be free or cost very little. This is probably the first place I’d look to see if I can leverage their services.

  • WP Engine - as part of their for $25/month “Managed WordPress” startup hosting plan you get 1-click staging & backup

  • BlueHost - Even their lowest WorPress hosting gets you “Daily Scheduled Backups”, and at $9.95/mo it’s much less than some of the other guys

  • Amazon Lightsail - A typical way to do backups with instances in Amazon is snapshots of the entire drive. Their pricing models aren’t as straightforward as some of the other providers, because their plans are very customizable. Here is an example hosting plan w/ their LightSail service, which is a “simpler” hosting alternative to their standard AWS EC2 instances:

    WordPress instance = 1GB memory / 40GB drive for $5 / month CDN distribution = Free first year Object Storage bucket = $1 USD / month Disk Snapshots = 40GB / month for $2 / month Total charges: $8 to get your WordPress site delivered around the world

  • Other Hosting - many will have some generic hosting admin panel, such as cPanel, Plesk, or CyberPanel, and these all provide various tools to manage your hosting, including functionality to do backups of your files and database

Leverage Features of Your WordPress Theme

Effort Needed: Very Low - Since you already have the theme installed, it should be minimal effort to enable the feature or install their add-on plugin

Added Cost: Very Low - If you already paid for the theme, this will most likely be free

Reliability: OK - It is run thru the WordPress site AND may have the theme as a dependency, so if you switch to another theme or your wp-admin side breaks, you might no longer be able to backup or restore

Some themes already provide this feature. If yours does, I would try using it first, as you shouldn’t have to install anything new on your site.

  • iThemes (via separate plugin)

Install Dedicated WordPress Backup Plugins

Effort Needed: Low - It should be minimal effort to install one of the backup plugins, but configuration can be simple or complicated, depending on how much you want to fine tune the backup configuration

Added Cost: Low - Most of the backup plugins provide at least basic functionality for free, so unless you need or want the additional features, it might not cost you anything

Reliability: OK - Like with the themes, the plugin is run thru the WordPress site, so if your wp-admin side breaks, you might no longer be able to backup or restore

There are plenty of good plugins made specifically for backing up and migrating your site. Here are a couple I recommend:

  1. Jetpack - suite of tools, including site backups. Created by Automattic, the people who developed Wordpress
  2. All-in-One WP Migration - very feature rich and open source allowing you to back up to just about anywhere, including Google Drive, Amazon S3, Dropbox, etc. It also allows you to filter out and back up only what you need. Note that while this is a free plugin, it has premium extensions.
  3. UpdraftPlus WordPress Backup Plugin - like the previous also allows saving backups to a wide assortment of cloud locations. It also supports incremental backups, which I mentioned might be a requirement for some people, especially if they need to do very frequent backups. Note, this and some other advanced features are only available in the paid pro version. UpdraftPlus Premium currently starts at $42/year.

Other Alternatives

  • Manually - if you know your way around a server, you might want to just setup a custom approach. For example, create a bash script that runs daily thru a cron job and zips up your files and database. You could even make it upload to a separate location, such as your dropbox, s3 bucket in AWS, or some other cloud storage
  • Managed - just hire someone to do this for you. Most hosting providers already make this pretty painless if you want to use their backup tools, but it still takes at least some technical effort and time to get this setup initially and then keep an eye on. If you already have a technical resource working on your site, you might want to just leverage them for this as well.

Things to Consider When Deciding on an Optimal Approach

Manual or Automatic Backups

I’ve always liked to automate things, but this isn’t best in all scenarios, and often the manual process is useful to set up and test to ensure everything is completed successfully before making that run automatically.

Web Host Limitations

Our web host if it doesn’t provide server and database backups or does but only when you log into their admin panel and hit a button. Maybe they only retain a few backups at once, so you have to space out the frequency you perform them.

Type of WordPress Site

Just because two sites are both running WordPress, it doesn’t mean that a different backup approach might be needed for one and the other.

Convenience or Stability

It may be nice to be able to control and manage your backups from within the WordPress dashboard, but what happens when your site crashes, and you need to restore the entire site from a previously made backup? It used to perform automatic WordPress backups, but now you can’t even do it manually, because the entire WordPress admin panel is non-functional.

Final Thoughts

In this article, we covered a lot of options for how to do backups. For maintenance tasks, such as backups, I like to keep things as simple and stable as possible to minimize the chance something can go wrong. Sometimes our options are limited by the capabilities of what we have to work with.

Share on:

Leave a Comment

Your email address will not be published, required fields are marked with *.

Comments

No comments yet.