Skip to content

Built-in Backup Management with Import and Gzip Export Support #24

@TeaCoder52

Description

@TeaCoder52

Feature description

Add built-in backup management with the ability to create backups, import existing backups, and export backups in compressed gzip format.

The feature should allow users to:

  • create full database backups directly from the UI
  • import backup files to restore a database
  • export backups as .gz archives to reduce storage size and simplify transfer
  • optionally enable automated backups in the future

This would make Datary a more complete database management tool by removing the need for external CLI tools for routine backup and restore operations.

Use case / motivation

Currently, users must rely on external tools or command-line utilities to create and restore database backups. This adds friction, especially for less experienced users or teams that prefer GUI workflows.

Suggested implementation

UI:

  • Add a Backups section in the database sidebar
  • Provide buttons:
    • Create Backup
    • Restore from Backup
    • Export Backup
  • Show backup history with size, date, and source database

Behavior:

  • Allow exporting backups as:
    • plain SQL dump
    • gzip-compressed (.sql.gz)
  • Support drag-and-drop or file picker for importing backups
  • Show progress indicator and error logs during backup/restore

Technical considerations:

  • Use streaming compression to avoid high memory usage
  • Validate backup compatibility before restore
  • Provide clear error messages and recovery guidance
  • Leave room for future scheduled backups

Examples / references

Several database tools provide built-in backup workflows with compression and restore support.

For example, DBeaver includes an export dialog with compression options and guided restore flow.

Command-line tools such as pg_dump + gzip are commonly used today, and integrating similar functionality into Datary would significantly improve usability.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions