Guides
How to keep database backups you can restore. The first three work without SafeGrd, using standard tools, and end with how SafeGrd does the same job. The Supabase guide sets up SafeGrd on GitHub Actions.
How to back up PostgreSQL to S3 with pg_dump
A backup script that stops on the first error, encrypts before upload, writes to a locked bucket with a key that cannot delete, and the matching restore command.
Immutable backups with S3 Object Lock
Compliance and governance modes, setting up a locked bucket, what retention costs at an hourly schedule, which providers support it, and what a lock does not protect.
How to test that a PostgreSQL or MySQL backup restores
Four levels of verification, from a checksum to a row-for-row comparison in a scratch database, what each one catches, and how to make the test routine.
How to back up Supabase with GitHub Actions
A nightly workflow that backs up a Supabase database through the session pooler, encrypted and locked, and a weekly job that restores it into Supabase's PostgreSQL image and checks every table's row count.
Comparisons
- SafeGrd vs AWS Backup: what each covers, what checks the data after a test restore, and where each backup can be restored.
- SafeGrd vs SimpleBackups: what each backs up, where the data flows, how each tests a restore, and what each costs.
- SafeGrd vs pgBackRest: physical backups with point-in-time recovery, or logical ones tested by restoring.
- SafeGrd vs BackupDrill: weekly drills in a vendor's cloud for Supabase, or drills on your host for every database, weekly or daily.
- SafeGrd vs Databasus: a free self-hosted tool with its own restore test, or a service with locked storage and a signed record.