Description
Ensure the Point-in-Time Recovery (PITR) add-on is enabled for production projects, so the database can be restored to any chosen moment, down to the second. This gives a much smaller window of possible data loss than daily backups, which can lose up to 24 hours of data.
Rationale
Daily backups can only restore the database to the time of the last backup, so up to a full day of data can be lost after an incident such as accidental deletion, a bad migration, or ransomware. PITR continuously backs up changes, allowing recovery to just before the incident happened. This is important for production data and for meeting recovery point objectives.
Impact
Allows restore to any second within the retention period
Greatly reduces possible data loss
Adds a monthly cost and requires a paid plan and compute add-on
Default Value
By default, PITR is not enabled. It is a paid add-on that requires a paid plan and at least a Small compute add-on. When PITR is enabled, daily backups are no longer taken.
Pre-Requisites
Project Owner or Admin role
Pro, Team, or Enterprise plan
At least a Small compute add-on
Billing approval for the add-on
Test Plan
Sign in to the Supabase Dashboard at https://supabase.com/dashboard.
Select your project.
Open Project Settings and select Add-ons.
Verify that Point in Time Recovery is enabled.
If it is not enabled, follow the implementation steps.
Implementation Steps
Sign in to the Supabase Dashboard at https://supabase.com/dashboard.
Select your project.
Open Project Settings and select Add-ons.
In the Point in Time Recovery section, choose a PITR retention period.
Confirm the change.
Open Database > Backups and confirm that the Point in time tab is available.
Backout Plan
Sign in to the Supabase Dashboard at https://supabase.com/dashboard.
Select your project.
Open Project Settings and select Add-ons.
In the Point in Time Recovery section, choose the option to disable PITR and confirm.
Reference