Good evening everybody and welcome to Lesson 14 of How to Build a Professional Website Using the Genesis theme and WordPress. This is our final lesson in the series and tonight we are going to be talking about all of the administrative tasks that are necessary in order for you to manage and maintain your own website.
We’re going to start off tonight by talking about WordPress backup basics because backing your site up is one of the most important things that you will need to do and you’ll need to do it often throughout the life of your site.
Where WordPress Stores Information
WordPress stores all of its information in two locations. The first location is inside of the database and the second location is inside of the WordPress files. Inside of the database, WordPress stores all page and post content, it stores the addresses of all images and other media files that you’ve added in the media library, it stores all plugin and theme options and it stores all WordPress settings.
In the files, it stores all of the plugin files, all of the theme files, all of your customization files which are generally associated with the theme files, all of your uploads so again, any media library then plugin uploads for example, NextGen Gallery. When you add images to the NextGen Gallery, it stores those in a separate folder as a separate file and it stores a set of files called upgrade files which is where it keeps the record of how it’s upgraded and what is upgraded.
Backup Your Site
If you’re going to backup your site, what needs to be backed up? Well, sort of the easy answer to that is, is that everything needs to be backed up. You want to backup your database and you want to backup your WordPress files. The reason I make this distinction is because I see all the time people backing up only one or backing up the other.
People have installed a database plugin that will create database backups or they’ll have a local copy of their website on their computer but won’t know anything about their database so they’re only backing up part of it. In point of fact, you really need to backup both your database and your WordPress files.
Now, you don’t necessarily need to backup every single file that you have in the WordPress files. At a minimum, you should be backing your entire database, you should backup your customization files, you should backup your Genesis Theme Settings and you should backup your WordPress content. Each of those things pretty much follows separately and there’s a bit of crossover here because the database is actually holding both the WordPress content and the Genesis Theme Settings.
In this case, what you’re going to do is, you’ll be keeping more than one copy of that information or to have the whole database plus you’ll have repeated information of theme settings and your WordPress content. The reason why we separate those things out is because they’re very easy to backup and they’re very easy to restore in the case of a problem.
When to Backup Your Site
You should have a backup system that operates automatically and it should backup everything on a regular schedule. In addition to that, you should have a manual system of backing up, that is event driven that is, it happens when certain things happen. By that I mean you should backup your site before any significant upgrade and again after any successful upgrade. The reason is because more often than not, when something fails, it’s failing generally in the upgrade process.
If you need to restore, either you want to be able to restore back to your original settings during that upgrade process or if down the road you have a problem after you’ve made your upgrade, you would like to be able to restore your site back to its original good condition that you had at the point in which you determine that your upgrades were successful. That’s what I mean by event-driven, that is you’re going to manually do this backup before you do an upgrade and after you do an upgrade.
How do I Backup BYOBWebsite?
People ask me fairly often how I backup BYOBWebsite and my answer to this is, change overtime. This is sort of the latest and greatest in August 2012, this is how I backup BYOBWebsite. I use an automatic backup system using BackupBuddy which is a premium plugin that I praise highly because it is so easy to use and in particular, it’s very easy to recover from but it does cost money to purchase.
I do automatic backups using BackupBuddy and on BYOBWebsite, I backup the database every hour. We have a lot of activity on the site and I don’t want to lose any more than an hour’s worth of data. Every single hour we backup the database and everyday, we backup the files plus the database then those are all sent to the storage in Amazon S3 automatically. I don’t have to do anything about this, it’s already all setup and it happens all in the background and it means I can quickly recover from a problem.
The second thing I do in terms of event-driven backup is I use BackupBuddy again and I just do a full backup immediately before I do a significant upgrade and immediately after I do a significant upgrade. I also do a manual backup again in that event-driven condition that is before an upgrade, I do a manual backup of my database. I also do sort of a routine manual backup of my entire site. The way that is reflected is that, I maintain a local copy of my website on my own computer.
Now, my customization files are always up to date that is, I always make my customization on my local computer and upload it to my website but the content isn’t necessarily always up to date but I do routinely just clone my current site and recreate it again on my local machine. That’s essentially my routine manual backup. I don’t do it on a specific schedule, I just do it every once in awhile.
That’s how I do BYOBWebsite but those of you who are watching this may know that I have another site called thesistoolbox. The thesistoolbox isn’t nearly as active a site as BYOBWebsite is. In that case, I do an automatic backup using BackupBuddy of the database everyday but only once a day and I do an automatic full backup once a month then I use these other systems for backing it up otherwise.
Before Disaster Strikes
Before disaster strikes, you want to make sure that you practice restoring from all of your backup methods. It’s a good idea to clone your site, set up a site on a development server or on a subdomain and practice restoring from all of those different things. So practice restoring manually from your database, practice restoring a manual backup, practice restoring one of your automatic backups so that when everything goes sideways, you will be comfortable doing that.
I’m sure that there are a number of other places in which this experience shows up but I learned this in the mountaineers when we would routinely practice for emergencies. We would practice certain kinds of first aid care under certain kinds of adverse conditions then we would practice high and go rescue and things like that. We would practice those routinely so that in the case of a real problem, we would be in a position to do something familiar to us. That’s the same kind of thing you have going on here. You should absolutely practice restoring your site from your backups.