How to Manually Restore PostgreSQL Database Clusters from Backups

DigitalOcean Managed Databases automatically handle recovery from hardware and software failures by replacing degraded nodes with new ones that resume directly from the point of failure. To recover from situations like a database administrator or application accidentally destroying data, you can manually restore a PostgreSQL database cluster from backups.

When you restore from a backup, we create a new copy of your cluster’s primary node. You cannot restore directly into the primary node itself because this creates alternative timelines for the database that introduce unwarranted complexity in a managed service. By restoring into a new primary node, a single linear timeline history is preserved.

PostgreSQL cluster backups are automatically created once per day and retained for 7 days. Backups do not result in downtime or performance degradation, and the time of day at which they run is set automatically by DigitalOcean and cannot be changed.

Restore a PostgreSQL Cluster from Backups

To restore from a backup, from the Databases page, click the name of the PostgreSQL database you want to restore to go to its Overview page, then click the Backups tab.

Screenshot of cluster backup page

From there, open the More menu of the backup you want to restore from and choose Restore.

Note
If you cannot select Restore, it means that you have hit the limit of database clusters for the account or team. You can delete a cluster or contact our support team for a limit increase.

In the Restore to new Database window that opens, choose a name for the new database. By default, the name is the original databases’s name appended with the date of the backup and the work “backup”, like originalname-aug-13-backup.

When you’re ready, click Restore to New to begin the restoration. The time it takes to create the new cluster depends on the amount of data in the original.

When the restoration completes, you can add standby nodes and read-only nodes as needed.

Warning
Destroying a database cluster will destroy the backups of that database. Make sure you’ve downloaded any important data before you destroy.