Backups & Disaster Recovery

Learn how to configure external object storage, schedule automated backups, and perform one-click database and volume restores.


1. Storage Architecture: Direct-to-Storage

Backing up large databases through a centralized API server creates severe network and memory bottlenecks. TurboV solves this with a direct-to-storage architecture utilizing S3 presigned URLs:

[ TurboV Control Plane ]
         │
         │ 1. Generates short-lived Presigned PutObject URL
         ▼
[ TurboV Agent (VPS) ]
         │ 2. Dumps & compresses database locally (gzip)
         │ 3. Streams compressed payload DIRECTLY to Object Storage via HTTPS PUT
         ▼
[ Your External Object Storage (AWS S3 / Cloudflare R2 / MinIO) ]
  • Zero Central Bottleneck: Dump streams never transit through the TurboV control plane.
  • Minimal Agent Footprint: Data streams are compressed on the fly and sent directly to S3 storage over HTTPS.

2. Supported Storage Providers

Configure your preferred storage provider in Settings → Backup Storage:

ProviderAuthentication RequiredS3 Endpoint URL
AWS S3Access Key ID, Secret Access Key, Bucket, RegionStandard AWS S3 endpoint
Cloudflare R2R2 Access Key ID, Secret Access Key, Bucket Namehttps://<account_id>.r2.cloudflarestorage.com
MinIO (Self-Hosted)MinIO Access Key, Secret Key, Bucket Namehttps://minio.yourdomain.com
Local Host StorageDedicated host directory pathLocal disk fallback

3. Configuring Automated Backup Schedules

Automate disaster recovery protection with flexible retention policies:

  1. Open your database or application in the dashboard and select Backups → Backup Schedules.
  2. Click Create Schedule.
  3. Configure the schedule:
    • Target Storage: Select your configured S3, R2, or MinIO bucket.
    • Cron Expression:
      • Daily at 2
        AM: 0 2 * * *
      • Every 6 hours: 0 */6 * * *
      • Weekly on Sunday: 0 0 * * 0
    • Retention Count: Maximum number of snapshots to keep (e.g. 14 or 30). Older backups beyond this limit are automatically pruned from your storage bucket.
  4. Click Enable Schedule.

4. Creating On-Demand Manual Snapshots

Before performing high-risk application updates or running complex schema migrations, create an on-demand snapshot:

  1. Open your database and navigate to the Backups tab.
  2. Click Create Backup Now.
  3. (Optional) Provide a descriptive label (e.g. pre-v3-migration).
  4. The agent takes a hot snapshot, streams it to your storage provider, and records the backup metadata in the dashboard.

5. One-Click Restore Workflow

In the event of accidental data deletion or hardware failure, you can restore any historical backup:

  1. In the Backups tab, locate the desired snapshot.
  2. Click Restore.
  3. Choose the target destination:
    • Restore in-place: Overwrites the active database instance with the snapshot data.
    • Restore to new database: Provisions a separate database instance containing the snapshot, allowing you to inspect data side-by-side without downtime.
  4. Click Confirm Restore.

The control plane generates a presigned download URL, the agent downloads and decompresses the archive, and restores the database engine cleanly.