Getting started
Getting started
DBMigratePro moves a database from one place to another — same-engine transfers
(MySQL → MySQL, PostgreSQL → PostgreSQL) and cross-engine conversions
(MySQL ↔ PostgreSQL) — across any host or cloud. You paste a source and a target
connection URL; we stream the data across with foreign keys preserved and every row
count verified.
The same pipeline runs scheduled backups: an encrypted copy of your database, kept off
your provider in storage you control, restorable to any host — and a restore is always
free. Most of this documentation walks through migrations, because the API and the
integrity guarantees are shared.
Run your first migration (UI)
- Create an account.
- Go to Migrations → New migration.
- Paste your source and target connection URLs (or fill the fields in the
"Enter details" tab). Both MySQL and PostgreSQL URLs are supported, e.g.
mysql://user:pass@host:3306/dbname or postgresql://user:pass@host:5432/dbname.
- Click Run pre-flight checks. We verify both databases are reachable, measure the
source size, detect whether it's a transfer or a conversion, and show the exact price.
- Click Authorize hold & start. We place a temporary hold — you're only charged if
the migration completes successfully; a failure is never charged. (Pro subscribers
start immediately with no per-migration charge.)
- Watch progress live on the migration page. You can also enable browser notifications to
be told the moment it finishes — success or failure.
That's it. When it completes, your target database has the schema, data, indexes, and
foreign keys, and the row counts are verified against the source.
Set up a backup (UI)
- Go to Backups → New backup.
- Paste the database connection URL of the database to protect.
- Choose how often — daily, weekly, or a custom interval in days.
- Under Advanced options you can name it, set how many runs to keep, and pick where
the backups land: our managed encrypted storage, or your own S3-compatible bucket.
- Create it. The first run starts immediately, so you can watch it finish rather than
wondering whether the schedule works.
Each run is encrypted before it leaves your database and stored off your provider, so you
still have it if that provider locks you out. From a backup's page you can restore it to
any database, on any host — and a restore is never metered or charged, on any plan.
Prefer the API or an AI agent?
Everything above is available programmatically: