Pilotbase migration plan review screen

More than a query window

Querying is half the job. The rest is moving schemas between environments, taking a backup before a risky change, or giving another service access without handing out database credentials. Pilotbase does these from the same right-click menu on a database: Run Backup, Plan Migration, Enable API and Export as SQL.

Migration: compare first, then review the plan

Pick a target connection and database, even on a different engine. Pilotbase lists every table with whether it exists on the source and the destination, row counts and size. Choose Schema only or Schema + data, untick what you don't want, then Review plan.

Pilotbase comparing PostgreSQL tables against a MySQL target before migration
PostgreSQL → MySQL: every table, where it exists, rows on each side and source size.

The review step shows what will change for each table before anything runs. Nothing is written to the target until you click Run Migration, and the run view then shows progress per object.

Pilotbase migration plan review listing per-table changes with a Run Migration button
The plan review: per-table changes, each of which can be excluded, and a single Run Migration button.

Backups and SQL export

Run backup now writes a backup of the selected database and lists it with its size and time so you can download it later. Export as SQL produces a script you can preview, copy or save, with options for CREATE TABLE, DROP TABLE IF EXISTS and INSERT statements per table.

Pilotbase backups dialog listing a completed PostgreSQL backup file
A backup of the demo database, ready to download.
Pilotbase Export as SQL dialog showing generated CREATE TABLE and INSERT statements
Export as SQL: pick tables and options on the left, preview the script on the right.

Credentials are encrypted at rest

Connection passwords, API keys, bearer tokens and LLM API keys are encrypted with Fernet symmetric encryption before they're stored. Sign-in is pluggable through an AuthBackend interface: anonymous mode for a single self-hosted user, with JWT, OAuth2, LDAP or SSO by implementing the interface. Users join through token-based invite links, and access can be granted per connection as read, write or admin.

Pilotbase Add Connection dialog with host, port, username and password fields
The password you enter here is encrypted before it's stored.

Optional: expose a database as an API

Enable API generates a REST API for a database, so another service can read and write rows over HTTP without direct database credentials. It's off by default. Read the dialog before you enable it: it adds guid, created_at, last_updated and is_deleted columns to every table, which you should plan for on a shared database.

Pilotbase Generated API dialog, disabled, noting the columns it adds
The generated API is opt-in and says up front which columns it adds.

Pilotbase is free and MIT-licensed. Run it as a desktop app or with Docker, connect a database, and see for yourself.

Get Pilotbase