Our Hosting backups use the latest in advanced server-based technology to be fast (nearly instant), cause almost no server load and are extremely space-efficient.

We do not charge any additional fees for hosting backups or their storage; they are included with each site plan.

While our hosting backups are reliable and redundant, members seeking extra peace of mind can create manual or cloud backups at any time, and this guide discusses how to do that.

6.1 Hosting Backups

Link to chapter 1

Incremental hosting backups occur automatically:

  • Every night
  • Prior to WordPress updates
  • When a staging site is pushed to production
  • When a new primary domain is selected
  • Prior to Automate updates

A full backup of each site is made every 15 days. Currently, we only back up production files and data. We do not back up staging sites, but they can be backed up manually via SFTP.

A copy of the most recent backup is stored locally to speed up subsequent backups. All other all backups are encrypted and stored in a remote datacenter in the same general region as your site (USA, EU, Canada, etc) and are redundantly stored on multiple devices across multiple facilities.

Hosting backups remain in storage for 30 days and cannot be removed prior to that.

6.2 Incremental Backups

Link to chapter 2

As noted above, a full backup is made every 15 days. All other backups —both automatic and manual⁠— are incremental backups, and understanding what that means is important.

In simplest terms, an incremental backup copies and stores only data that has been changed since the last backup. When you look at your backup list and see multiple backups created during the past several days, you are not looking at multiple copies of your full site, but rather the incremental changes that have been backed up since the last full backup.

Incremental backups are superior to traditional backups in a number of ways; perhaps most importantly, they are small and fast. This allows us to backup your site more frequently. Consider this example: Your 500MB site was backed up last night and today you added 5MB of data. You want to protect the new data, but why backup the entire site when 99% of its data hasn’t changed? Instead, the next backup will include the new data only and will have the smallest possible impact on your storage capacity, has a negligible impact on server load and takes place in the blink of an eye.

When a backup is restored or downloaded, these incremental backups are merged with the last full backup to produce an up-to-date copy of the site. For more on restoring from backup, see our Restores documentation below.

6.3 Manual Backups

Link to chapter 3

Manual backups can be accomplished in multiple ways:

  • Via the Hub
  • With a WP CLI command over SSH
  • Using our REST API
  • (Coming Soon)

From The Hub

Begin on the Hub’s main page (My Websites tab) and click the site you wish to restore, then select the Backups tab.

You will see the Schedule and Settings tabs. Because our hosting backups are automatic, recurring and stored for 30 days, scheduling features are disabled for sites we host.

The Settings tab is used to configure our Snapshot backup plugin, and while our hosting backups provide redundant cloud storage, members can use Snapshot to create still another cloud backup for added peace of mind. See our SnapShot plugin page to learn about the plugin’s features.

Click New Backup to access the Backup Manager. From the manager, you can trigger a new backup, restore your site, download a zipped copy of any backup or annotate any backup with a comment.

Clicking New Backup will immediately initiate a backup.

A message will appear when the backup begins and another when it is completed.
 

6.4 Backup via WP CLI

Link to chapter 4

The WP-CLI, WordPress Command Line Interface, allows users to perform actions by entering commands in the command shell or Apple terminal app. It’s a highly efficient way to accomplish many tasks, but it requires some knowledge of code. If you aspire to be a WordPress developer we encourage you to learn to use WP CLI commands; if not, you should manage your backups from The Hub. You can damage your site with WP CLI commands if you aren’t careful.

Create an SSH User

Only an SSH user created by you can access your site via WP CLI. If you haven’t created an SSH user you’ll need to do that before you can begin the steps below. See our SFTP/SSH documentation for guidance on creating an SSH user.

Login to remote server

To log in to the remote server via the WP CLI you will need your SSH password and a command that identifies your site. Click the Details icon for your SSH user to locate the command.

The popup that appears shows the command that, along with your SSH password, allows you to access your site’s files via the WP CLI. Copy the command.

Open a command shell and follow these steps. The image below shows what the process looks like in the shell.

  1. Paste the command you copied from the SSH Details popup into the command line.
  2. The first time you access any site via the shell, you must approve a security certificate. When prompted, enter Yes into the command line to approve the certificate.
  3. Enter the password for the SSH user you are working with.

 

The WP CLI will open and you can begin entering commands. Advanced users who intend to frequently work in the shell can access a list of WPMU DEV custom commands by entering ‘wp help wpmudev’ in the command line.

Custom Backup Command

You can trigger a backup from the WP CLI with our custom command: ‘wp wpmudev backup create’. Note that this backup is identical to our WPMU DEV hosting backups and will appear as a manual backup in the Backup list in your Hosting control panel.

Create backup to download

If you want to create a backup that you can download via SFTP, first be sure you have sufficient storage space available. Next, log in to the remote server from the shell and enter this command to access your public_html folder: ‘cd ~/site/public_html/’.

Now enter this command: ‘zip -r my_backup.zip .’ to create a copy of everything in the public_html folder and save it in a zip file named my_back.zip.

NOTE: That isn’t a random period at the end of that command. There is a space after “zip” and then a period (full stop).

Now, log in to your site with your SFTP client and download the file ‘my_backup.zip‘ from the public_html folder.

6.5 Restoring from Backup

Link to chapter 5

Backups can be restored via the Hub control panel on the backups tab, via the WP CLI and soon you will be able backup using our REST API .

While restoring from backup most control panel functions will be disabled, and your production and staging sites will show a maintenance screen with a 503 HTTP response code. How long a restore takes depends on the size of the backups involved and how long they take to download to your server.

All backups are stored for 30 days, but if you need to restore a backup that is more than 30 days old, contact support. Depending on your site’s internal rotation schedule we may be able to restore as far back as 45 days.

Due to the architecture of our staging environments, restoring a backup will trigger a re-sync of staging. So if you’ve made changes to your staging environment that you want to keep but which haven’t yet been pushed to production, and you should manually back those up before restoring your site.

Restore from The Hub

Begin on the Hub’s main page (My Websites tab) and click the site you wish to restore, then select the Backups tab.

Click the backup you wish to restore, then click Manage.

Click Restore.

Enter your WPMU DEV account password, then click Go to initiate the restore.

A message will appear when the restore begins and another when it is complete.

Restore via WP CLI

WP-CLI, WordPress Command Line Interface, allows users to perform actions by entering commands in the command shell or Apple terminal app. It’s a highly efficient way to accomplish many tasks but requires some knowledge of code. If you aspire to be a WordPress developer we encourage you to learn to use WP CLI; if not, you should restore your site from the Hub. You can damage your site with WP CLI commands if you aren’t careful.

Create an SSH User

Only an SSH user created by you can access your site via WP CLI. If you haven’t created an SSH user you’ll need to do that before you can begin the steps below. See our SFTP/SSH documentation for guidance on creating an SSH user.

Login to the server

To log in to the remote server via the WP CLI you will need your SSH password and a command that identifies your site. Click the Details icon for your SSH user to locate the command.

The popup that appears shows the command that, along with your SSH password, allows you to access your site’s files via the WP CLI. Copy the command.

Open a command shell and follow these steps. The image below shows what the process looks like in the shell.

  1. Paste the command you copied from the SSH Details popup into the command line.
  2. The first time you access any site via the shell, you must approve a security certificate. When prompted, enter Yes into the command line to approve the certificate.
  3. Enter the password for the SSH user you are working with.

The WP CLI will open and you can begin entering commands. Advanced users who intend to frequently work in the shell can access a list of WPMU DEV custom commands by entering ‘wp help wpmudev’ in the command line.

Initiate the Restore

You need to access your WordPress site’s public_html folder by changing directories, with this command entered from command line: ‘cd ~/site/public_html/’.

Next, enter the command ‘wp wpmudev backup list’ to access a list of this site’s current backups in storage. The backups that appear in this list are identical to those that appear in the Backups tab of The Hub.

Locate the backup you want to restore and copy its ID.

Enter the command ‘wp wpmudev backup restore ‘xxxxIDxxxx’, replacing the ‘x’s‘ with the backup ID. For example, the command to restore the backup indicated above would appear so: ‘wp wpmudev backup restore prod_incremental_20190730024701_A5E74’ in the command line, as shown below.

A success message will appear when the restore begins, but keep in mind that the restore process may take a few minutes depending on the size of your backups and how long they take to download to your server.

6.6 Exporting Backups

Link to chapter 6

Hosting backups can be exported and downloaded in a format useful for manual restores or migrations. An export job can be scheduled via the Hub control panel on the backups tab, via a WP CLI command over SSH wp wpmudev backup export, or via our REST API (documentation coming soon).

Once a backup export job is complete an email will be sent to you with a secret download link that expires after one week.

6.7 Snapshot Plugin

Link to chapter 7

Hosting backups use a different system than the backups provided by the WPMU DEV Snapshot plugin (snapshot and cloud backups). Because we have access to the server infrastructure for sites we host, we can create and restore backups much faster and efficiently.

We will soon be updating the Snapshot plugin to transparently use our hosting backup system for managed backups when installed in our hosting environment to provide the best speed and unlimited storage.

6.8 Getting Support

Link to chapter 8

After reading this guide, if you still have questions regarding backups, don’t hesitate to start a live chat with our support Superheroes or submit a support ticket using the Support tab of your WPMU DEV Dashboard.