Documentation

Documentation

Setup, configuration, and best practices for verified MySQL backups.

Overview

BackupVerified is designed to be simple: a lightweight agent creates MySQL backups, encrypts them locally, and uploads them to your AWS S3 bucket. On a schedule, verification performs test restores in a clean environment.

Requirements

Before installing, make sure you have the following ready.

AWS S3 bucket

Create a bucket in your AWS account to store encrypted backups.

Server access

SSH access to the machine running MySQL and permission to schedule jobs.

Backup user

A MySQL user with minimum required privileges to dump the database.

Encryption key

A secure key/passphrase for encrypting backups before upload.

Security reminder

Do not paste passwords, private keys, or secrets into support emails. Use environment variables or secure config.

Install the agent

Download the agent, make it executable, and place your configuration file on the server.

Install (example)

CLI
curl -fsSL https://backupverified.com/downloads/agent-latest -o backupverified-agent
chmod +x backupverified-agent
sudo mv backupverified-agent /usr/local/bin/backupverified

Suggested config path

/etc/backupverified/config.yml

Configuration

Configure MySQL details, S3 destination, schedule, retention, and encryption.

config.yml (example)

YAML
mysql:
  host: "127.0.0.1"
  port: 3306
  user: "backup_user"
  database: "app_db"

backup:
  schedule: "0 */6 * * *"
  retention_days: 14

encryption:
  key_env: "BACKUPVERIFIED_ENCRYPTION_KEY"

storage:
  provider: "s3"
  bucket: "your-s3-bucket-name"
  region: "us-east-1"
  prefix: "mysql-backups/app_db"

Schedule

Use cron format to control backup timing.

Retention

Control how long backups remain available.

Run your first backup

Run the agent once to confirm it can create and upload an encrypted backup.

Run

CLI
export BACKUPVERIFIED_ENCRYPTION_KEY="your-strong-key"
backupverified run --config /etc/backupverified/config.yml

What to check

  • A new encrypted object appears in your S3 bucket under the configured prefix.
  • The agent reports a successful upload and exits cleanly.
  • The portal (once enabled) shows a successful backup event.

Restore verification

Verification runs download your encrypted backup and perform a test restore in a clean environment. Results are recorded so you have proof your backups work.

What it checks

Restore completes successfully and the DB is readable.

How often

Depends on plan and your desired confidence level.

Portal & alerts

The portal provides visibility into backup history and verification results. Alerts can be configured as available.

Recommended alerting

Notify on failed backups, failed verification restores, and missing scheduled runs.

Troubleshooting

Upload fails

Verify IAM permissions (PutObject), bucket region, and server connectivity to AWS.

Verification fails

Common causes include corrupted dumps, low disk space, or MySQL version mismatches.

Schedule not running

Confirm cron/service timers are configured and the agent has execution permissions.

FAQ

Backups are encrypted before leaving your server to reduce exposure during transfer and storage.
You create and control the S3 bucket. BackupVerified uploads encrypted backups into your account.
Verification runs restore the backup in a clean environment and records the result in your history.

Still stuck?

Email support@backupverified.com with environment details (never credentials).