1. Guides
  2. Run restore tests
  3. Restore types
  4. Databases
  5. Database restores
Website
  • Overview
  • Quickstart
  • How RestoreTrust works
  • Requirements
  • Organizations and projects
  • Project workers
  • Test schedules
    • File checks
  • Validation gates
  • Time zones and dates
  • Manual runs
  • Notifications
  • Check results
  • Execution logs
  • Reports
  • Evidence and verification
  • Team and roles
  • API keys
  • Billing and plans

Database restores

Configure backup format, encryption, database version, target, and gates for recurring restore validation.

Loading documentation…

Test schedules< PreviousPostgreSQLNext >

Powered by heyo

On this page

Configure the backupSupported artifact layoutsDefine a meaningful restore

A database restore schedule validates that one selected backup can be downloaded, decoded, imported into a temporary database, and checked against your gates.

RestoreTrust supports PostgreSQL, MySQL, MariaDB, and MongoDB. Each engine page lists the exact versions currently available.

Configure the backup

Select the exact database version from the choices shown in the console. The version tables in this guide are a snapshot; the console and the database-engine catalog remain authoritative when the catalog changes.

Then describe the layers of the backup:

SettingChoices
ContainerDetect automatically, none, tar, or ZIP
CompressionDetect automatically, none, gzip, zstd, xz, bzip2, or lz4
Dump formatSQL for PostgreSQL, MySQL, and MariaDB; mongodump directory for MongoDB
EncryptionNone, age identity, or age passphrase
ZIP passwordOptional secret for password-protected ZIP containers

MongoDB directory dumps must be packaged, so its container choices are automatic detection, tar, or ZIP.

Automatic detection examines content rather than relying only on the filename. Choose an explicit container or compression when you want to enforce the expected format; a mismatch fails the check.

Supported artifact layouts

RestoreTrust decodes from the outside inward: age encryption → compression → tar/ZIP container → database dump. Each layer is optional where the engine permits it. ZIP's own internal compression is part of its container; select None or Detect automatically for the separate compression layer when using ZIP.

Backup layoutSupported use
Plain SQL, optionally compressed, such as .sql or .sql.gzPostgreSQL, MySQL, MariaDB
A tar archive containing exactly one .sql file, optionally compressed as .tar.gz, .tar.zst, etc.PostgreSQL, MySQL, MariaDB
A ZIP archive containing exactly one .sql file, optionally password-protectedPostgreSQL, MySQL, MariaDB
A tar or ZIP archive of an uncompressed mongodump directory; tar may have an outer compression layerMongoDB
Any supported layout encrypted with age after packaging/compressionSelect the matching age mode and secret

Do not compress individual dump files inside an archive. For example, use a tar containing backup.sql and then gzip the tar, rather than putting backup.sql.gz inside it. Archives must contain regular files and directories with safe relative paths; links, device entries, duplicate files, and paths escaping the archive are rejected.

Unsupported inputs include PostgreSQL custom, directory, and native tar dumps; mongodump --archive and mongodump --gzip output; nested compression; a ZIP wrapped in another compression layer; 7z/RAR archives; and OpenPGP/GPG encryption. A tar containing a plain PostgreSQL .sql file is supported, but a native pg_dump -Ft backup is a different format.

Encryption must be declared

None does not silently accept age-encrypted input. Select the correct age mode and secret metadata, or the check will fail. For password-protected ZIP, select an archive-password secret with an automatic or ZIP container setting.

Define a meaningful restore

  1. 1

    Match the producing database

    Choose the engine and exact source version. A nearby version is not evidence that the original backup is restorable under the conditions you require.

  2. 2

    Describe the artifact layers

    Use automatic detection for flexible input, or enforce the known container and compression. Add ZIP or age decryption metadata when required.

  3. 3

    Set the restore target

    PostgreSQL, MySQL, and MariaDB accept an optional target database. MongoDB restores the dump's database layout and has no target-database field.

  4. 4

    Add gates

    Require import completion, add targeted queries or MongoDB operations, and set duration limits where they reflect your recovery objective. At least one gate is required.

  5. 5

    Run a representative backup

    Start a manual check and inspect the selected artifact, restore stage, probes, and evidence before relying on recurring results.

Temporary restore data is used for the check and is not a replacement recovery environment. Do not put secrets or unnecessarily sensitive data in query output; probe results become part of the check record.

Related topics

  • Backup encryption
  • Validation gates
  • Logs
  • Evidence