Oracle to Aurora PostgreSQL: A Field Guide for ANZ Enterprises
The real decision framework for Oracle-to-AWS migration — not the marketing version. If you only read one note, read this: it covers PL/SQL survival rates, the realistic project-length signals, and where SCT and DMS actually help.
5 min read · click to expand
Every Oracle-to-PostgreSQL migration starts with the same question: how much of our PL/SQL will survive? The answer determines whether you're looking at a 3-month project or a 12-month programme.
From my experience across enterprise migrations in New Zealand and Australia, the pattern is consistent. AWS Schema Conversion Tool (SCT) handles roughly 60–80% of Oracle PL/SQL automatically. The remaining 20–40% — usually involving DBMS_SCHEDULER, UTL_FILE, Oracle-specific analytic functions, and complex cursor logic — needs manual rewriting. This is where most project timelines go wrong: teams underestimate the manual conversion effort by 2–3×.
The migration sequence that works
- Run SCT and get an honest conversion report — read the red items, don't skim them.
- Manually fix every "red" item up front; they do not sort themselves out later.
- Set up AWS DMS with full-load + CDC so the target stays in sync while you validate.
- Run validation passes: row counts, checksums, and application-level smoke tests.
- Cut over in a short maintenance window once CDC lag is near zero.
The trap Oracle shops don't see coming
PostgreSQL's MVCC behaves differently. Oracle uses undo tablespaces; PostgreSQL keeps old row versions in-place and relies on VACUUM to reclaim space. If your application has long-running transactions, plan for bloat management from day one — not as an afterthought.
For ANZ enterprises running Oracle 12c–19c on-premises with 500 GB–5 TB databases, the typical migration to Aurora PostgreSQL takes 4–8 months including application testing. The cost savings are real — typically 40–60% on licensing alone — but only if the migration is planned as an engineering project, not a checkbox exercise.
Bottom line Budget for the 20–40% of PL/SQL that SCT can't convert, design for VACUUM and bloat before cutover, and treat the migration as an engineering programme. Do that and 40–60% licence savings are realistic; skip it and the timeline doubles.