Web design, CMS and development, since 2014VR Games
Development

Your Website Backup Has Never Been Tested—So How Do You Know It Will Work?

Test website backup still

Owners who can confidently perform an isolated, time-boxed restore drill on their site's backups prove that a backup is only as good as the last time it was successfully restored. This post shows you how in an hour, without exposing your live site.

The Difference Between a Backup and a Restore

If you own a website and have backups, there's a good chance you've only tested them by confirming that the backup itself completed successfully. But that's not the same as verifying that you could restore that backup in an isolated environment. Merely backing up, though imperative, guarantees you nothing if the restore fails.

Professional guidance makes a key distinction.(https://www.grasp.zendesk.com/hc/en-us/articles/6357263935393-Performing-a-File-Level-Test-Restore) that restore tests must always target an isolated free folder, test machine, or sandbox virtual machine, not overwrite over production data. You verify a restore by selecting a backup and a target file, then running the restore into a separate, safe location. The same lesson recommends comparing the restored file's cryptographic hash before and after the restore. A restored file that matches the original bit-for-bit is a restored file.

How Backups Fail in Practice

Backups fail in practice when you do not test restoring them, which means that a backup is theoretical until a restore succeeds. Verifying a backup is about as valuable as it is.

Therefore, backups are only of value if your restore process is proven. For your backups to be truly verifiable, they must be repeatable and reviewed regularly. If you have backups but never run full restores, your backups may be as good as dead as soon as they are made.

A One-Hour Restore Rehearsal for a Small Website

If your site runs on a CMS like WordPress, a template-based platform like Squarespace, or generate static HTML files, you can perform a restore rehearsal in about one hour. The goal is to prove your largest files, most important content, and most recent changes can be restored without corrupting your database.

To start, select a few items in your staging or live site:(https://www.ifeeltech.com/blog/how-to-run-a-backup-restore-test-for-a-small-business), folders, and assets that you can sacrifice in a test. Choose a 30-day-old content item and a file uploaded in the last 7 days. Identify those items in your backup software. Pick the most recent successful backup and run a restore of those files into a brand new virtual machine, test environment, or sandbox folder. Open the restored files and folders in their native applications or import the database—to prove that the restore preserved the content and its integrity.

Some quick steps to sketch out:

  1. Provision a test environment: Set up a new virtual machine, sandbox folder, or unused staging environment. Install the same platform and content management system (CMS) as the live site.
  2. Identify your backup and restore point: Choose a recent backup that includes the files and folders you want to restore.
  3. Run the restore: Use your backup software to restore the selected files and content into the test environment.
  4. Verify the restore: Open the restored files in their native applications and compare them to the original versions. Check the file sizes, last modified dates, and content.

How to Prove Your Restore Worked

A restore is only as good as the proof you have for it. Practitioner guidance recommends running a hash comparison between the original and restored files - matching them bit-for-bit to prove that the restore process did not corrupt or lose any data. Build tables that compare the record count from the original database to the restored data to prove that the database restore did not lose or corrupt any of the data.

For file and folder-level restores:

  • Calculate the file checksum of the original files
  • Restore the files to the test environment
  • Recalculate the checksum of the restored files
  • Compare the original and restored checksums

The files have been successfully restored if the checksums match. Verify the original database restored correctly by:

  • Run a database consistency check
  • Compare the record count for the most important tables
  • Compare the checksum of the original and restore database

Making Restore Tests a Habit, Not a One-Off

The restore tests that have been described here should be turned into a routine for companies to perform on their site regularly. It must be scheduled just like other IT maintenance and tracked internal documentation. Having regular backups does not mean that the restoration is complete. Regular restores require the site administrator.

Restore rehearsals should be in writing, documented, and filed. The restore that was used, the environment that was restored, the tester responsible and when the next restore is scheduled(https://www.csoonline.com/article/3347387/how-to-review-and-test-backup-procedures-to-ensure-data-restoration.html).

When to Escalate Beyond DIY Testing

If the restore testing growth for your business is between 3 to 10 people, you may start by having an IT person or an administrator manage the restore testing. If it is 10+, you may wish to contract with a backup service provider (MSP) to perform absolute restores as part of a managed service.(https://docs.aws.amazon.com/en_us/aws-backup/latest/userguide/restore-testing.html) insist on using sandbox VMs and cloud test environments to restore software that manages hundreds of servers and databases.

Given the complexity of server-based restore tests, it is important to have experts manage the ever-increasing complexity of restoring large websites and applications.

Conclusion

Most people who own small websites focus on how often to backup their websites. This needs to be expanded. Despite the fact that a website is essential to these business owners, along with the time and effort to create and maintain these sites, many owners skip to step, restoring their backups. Rather than rolling the dice on the viability of your backup, you may spend a valuable hour of your time now, or you may spend days recovering your site in the future.