v2.4.1 — Production Ready2026-02-23 23:57 UTC
migrate-cli — bash — 200×50
scroll to explore

§ 01 — Schema Intelligence

Live schema diff. Every object accounted for.

Migrate inspects 3,847 tables, 9,204 foreign keys, 412 views, and 87 triggers — then shows you exactly what changes between Oracle and Postgres before a single byte moves.

schema.diff — source (Oracle 19c)
1 -- Oracle 19c: orders table
2 CREATE TABLE orders (
3- order_id NUMBER(19,0) NOT NULL,
4- customer_id NUMBER(19,0) NOT NULL,
5- order_date DATE NOT NULL,
6- total_amt NUMBER(19,4) NOT NULL,
7~ status VARCHAR2(32) DEFAULT 'PENDING',
8~ payload CLOB,
9 CONSTRAINT pk_orders PRIMARY KEY (order_id),
10 CONSTRAINT fk_customer FOREIGN KEY (customer_id)
11 REFERENCES customers(customer_id)
12 );
13
14--- Sequence (Oracle-specific)
15-CREATE SEQUENCE orders_seq
16- START WITH 1 INCREMENT BY 1;
9,204 / 9,204Foreign keys preserved
100% automatedType conversions
1 (RAW → BYTEA)Manual review flags

§ 02 — Compatibility Matrix

Every path. Every dialect.

Hover a source or target to highlight supported migration paths. Full lines = 100% automated. Dashed = assisted conversion with flagged objects.

SOURCE
Oracle 19c
Enterprise / RAC
MySQL 8.x
InnoDB / RDS
SQL Server
2016–2022
MongoDB
5.x / Atlas
Aurora MySQL
v2 / v3
TARGET
PostgreSQL
14 / 15 / 16
CockroachDB
v23.x
PlanetScale
Sharded Postgres
Supabase
Postgres + Edge
Aurora PG
Multi-Region
Full automation
Assisted conversion
13 fully automated paths

§ 03 — Benchmarks

Numbers that hold up at 2 AM.

Tested against a 25TB dataset across 3,847 tables from a 5-node Oracle RAC cluster. 2.8M daily transactions. Peak: 8,400 txn/min.

Row Transfer Rate
TB / hour · higher is better
pgLoader (untuned)0.4 TB/hr
Flyway CLI0.8 TB/hr
AWS DMS (standard)1.2 TB/hr
Migrate (baseline)2.1 TB/hr
Migrate (tuned)3.1 TB/hr
3.1TB/hr sustained · pgLoader baseline: 0.4TB/hr
Migration Downtime
hours · lower is better
Manual Dump/Restore14.5 hrs
AWS DMS standard4.2 hrs
pgLogical CDC0.8 hrs
Migrate CDC mode0s ✓
CDC mode: 0-second downtime · $840K/hr risk eliminated
25TB
largest validated migration
3,847
tables migrated in 4m 38s
83%
of migrations fail without tooling (Gartner)
0ms
replication lag in CDC mode

§ 04 — Free Dry Run

Run it before you commit to it.

Tell us your source DB and we'll spin up a sandboxed dry run against a replica — no credentials required, no data leaves your perimeter. Three fields. No friction.

❯ migrate --configure-dry-run
500–1,000 tables
< 1005,000+

No credentials required. No data leaves your perimeter. Results in < 5 minutes.

Not ready to start? Grab the technical playbook first.

Read the Migration Playbook— 47-page technical PDF