The worst time to discover you have no backup is after the data is gone: human error, a breach, a failed disk or a bad update. The fix is simpler than many people think.

The rule

  • 3 copies of your data (the original plus two copies).
  • On 2 different kinds of media (for example a server and cloud storage).
  • At least 1 copy off-site, in a different location.

What to back up

  1. The database, the most important and fastest-changing part.
  2. Uploaded files such as client images and attachments.
  3. Configuration files not kept in Git, such as secrets, stored encrypted.

The code itself lives in Git, so it needs no separate copy.

Automate it

Run backups on a daily schedule, because manual backups get forgotten. Keep several older copies (daily for a week, weekly for a month), since a mistake may not be noticed for days.

Test the restore

Every so often restore a backup to a test environment and make sure the site works. That is where you find a corrupt or incomplete file before you actually need it.

Restoring is the only test that proves you have a backup.