The Unicorn blog
A website backup is only useful if you can restore it
A successful backup job is encouraging, but it is not the same as a tested recovery process. When a website needs to be restored, the team also needs the right files, a compatible code release, and clear instructions. Treat recovery as a small operational project with an owner and a repeatable procedure.
Identify everything the site depends on
For a Drupal site, consider the database, public and private uploads, application code, dependency lock file, and environment settings. Some secrets may need to be recovered through a separate secure process. List external services too, so nobody assumes that restoring the website also restores data held elsewhere.
Keep code and data compatible
Database updates can change what the application expects to find. Label backups with the corresponding release and record when updates ran. If a rollback is needed, check whether the previous code can read the current database. Restoring a matched code-and-data set is different from merely changing a Git branch.
Agree how much recent work could be lost
The right backup schedule depends on how often content, submissions, and business records change. Discuss the effect of losing updates since the last backup. Also agree who can authorize a restore, because replacing a database may remove legitimate activity that happened after the backup was taken.
Rehearse away from production
Restore a selected backup into an isolated environment and test the important journeys. Keep outbound mail and integrations from acting on real customers during the rehearsal. Record missing access, unexpected paths, and extra steps while there is time to fix them rather than during an incident.
Protect and maintain the recovery material
Keep backup files outside the public document root and restrict who can download them. Review retention and storage capacity with the responsible team. Revisit the instructions after hosting, credentials, or deployment changes, and make sure the designated recovery owner can still access what is needed.
Make the next step practical
Have a question about your own platform? Discuss ongoing website support and tell us what you would like to improve.