Database Backup & Recovery
Strategies for backing up and restoring the Gauzy database.
PostgreSQL Backupβ
Automated Daily Backupsβ
# Cron job for daily backups at 2 AM
0 2 * * * pg_dump -h localhost -U postgres gauzy | gzip > /backups/gauzy_$(date +\%Y\%m\%d).sql.gz
Manual Backupβ
pg_dump -h $DB_HOST -U $DB_USER -d $DB_NAME -F c -f gauzy_backup.dump
Point-in-Time Recoveryβ
Enable WAL archiving for PITR:
# postgresql.conf
wal_level = replica
archive_mode = on
archive_command = 'cp %p /wal_archive/%f'
SQLite Backupβ
For development/small deployments using SQLite:
sqlite3 gauzy.sqlite3 ".backup 'gauzy_backup.sqlite3'"
Restore Procedureβ
# PostgreSQL restore
pg_restore -h $DB_HOST -U $DB_USER -d $DB_NAME -c gauzy_backup.dump
# If using SQL format
psql -h $DB_HOST -U $DB_USER -d $DB_NAME < gauzy_backup.sql
Backup Checklistβ
- Automated daily backups configured
- Backups stored off-site (S3, GCS)
- Retention policy set (30 days recommended)
- Restore procedure tested monthly
- File storage (uploads) backed up separately
Related Pagesβ
- Production Deployment β deployment setup
- Scaling & High Availability β HA architecture