Keep databases in sync — live
Zero-downtime cutover with continuous change data capture. Stream every INSERT, UPDATE, and DELETE from Oracle, MySQL, or SQL Server to PostgreSQL in real time — so you can switch traffic when you're ready, not when you're forced to.
How CDC Works
Changes are captured at the transaction log level — no triggers, no application changes, no performance impact on the source database.
Source Database
log events
CDC Reader
Polls source log at configurable interval. Batches INSERT / UPDATE / DELETE events. Persists watermark (SCN / LSN) after each batch.
replay
Target Database
Events replayed in commit order. COMMITTED_DATA_ONLY — no dirty reads. Target stays < 1s behind source during steady state.
Key CDC Features
SCN-based change capture directly from Oracle redo logs. No additional agent or license required — connects with standard DBA credentials.
Row-level replication using MySQL binary log in ROW format. Captures INSERT, UPDATE, and DELETE events with full before/after row images.
LSN (Log Sequence Number) tracking via SQL Server's built-in CDC change tables. Resumes automatically after network interruptions.
Only committed transactions are replayed on the target. Rolled-back transactions and dirty reads are automatically excluded.
The last processed SCN (Oracle) or LSN (SQL Server / MySQL) is persisted to disk after every batch. Restart from exactly where you left off.
Enable supplemental logging on all migrated tables with a single click. DBMigrateAIPro generates and executes the ALTER TABLE statements for you.
Zero-Downtime Migration Flow
CDC bridges the gap between your bulk migration and your application cutover, keeping source and target in sync the entire time.
Run full bulk migration (historical data)
DBMigrateAIPro copies all historical rows in parallel batches. The SCN / LSN at migration start is recorded as the CDC watermark.
Start CDC reader
CDC reader begins streaming changes from the recorded start SCN / LSN. Any writes made to the source during bulk copy are replayed immediately.
Both databases in sync — run validation
Row-count and hash validation confirms target matches source. Replication lag drops below 1 second under normal write loads.
Cut over application connections
Update your connection string or DNS entry to point at PostgreSQL. DBMigrateAIPro keeps CDC running during the brief switchover window.
Stop CDC reader
Once all application traffic is confirmed on PostgreSQL and no source writes remain, the CDC reader is stopped and the migration is complete.
Configuration Reference
| Setting | Default | Note |
|---|---|---|
poll_interval | 5s | How often to poll LogMiner for new changes |
batch_size | 1000 | Rows processed per LogMiner batch |
start_scn | auto | Captured at migration start automatically |
supplemental_logging | required | Must be enabled on all source tables |
| Setting | Required | Note |
|---|---|---|
binlog_format | ROW | Must be set in my.cnf before enabling CDC |
server_id | unique | Must differ from all other replicas |
auto_position | true | GTID-based positioning for reliable resume |
Oracle Setup Commands
Run as a DBA before starting the migration. DBMigrateAIPro's SupplementalLoggingManager can generate and execute the ALTER TABLE statements automatically.
-- Enable supplemental logging on a single table
ALTER TABLE hr.employees
ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
-- Enable minimal supplemental logging at DB level (required first)
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
-- Confirm supplemental logging is active
SELECT log_mode, supplemental_log_data_min,
supplemental_log_data_pk, supplemental_log_data_all
FROM v$database;
-- Capture the current SCN before starting the bulk migration
-- (DBMigrateAIPro does this automatically — shown here for reference)
SELECT current_scn FROM v$database;Supplemental Logging Required
CDC requires supplemental logging enabled on ALL migrated tables. Without it, Oracle's LogMiner cannot produce full before/after row images, and change events will be incomplete. DBMigrateAIPro's SupplementalLoggingManager can generate the ALTER TABLE statements automatically — run it once before starting your migration.
Ready for zero-downtime cutover?
Follow the CDC setup guide or explore pricing — get started in under 10 minutes.