# Aurora Migration Toolkit

> The methodology and tooling behind 50+ production MySQL migrations to AWS Aurora — most cutovers under 3 minutes of downtime.

---

LLMS index: [llms.txt](/llms.txt)

---

Migrating a single database to Aurora is a project. Migrating fifty —
including multi-terabyte, tier-0 systems with 24/7 write traffic — is a
platform. This is the toolkit and methodology that made it repeatable.

## Challenge

Each team's database had different constraints: replication lag budgets,
change-freeze windows, version skew between on-premises MySQL and Aurora,
and applications that had grown assumptions about their database over a
decade. One-off migration plans did not scale to fifty of them.

## Approach

- **One pipeline, parameterized per database.** A CDC-based replication
  path with a rehearsed cutover runbook, tuned per workload instead of
  rewritten per workload.
- **Rehearsal as a gate.** Every cutover was executed against a restored
  copy first, with the same scripts, same checks, same rollback points.
- **Cutover under 3 minutes.** The downtime budget was a design input,
  not an outcome: DNS weights, connection drains, and write-freeze
  verification were automated and timed.

## Result

About 50 production databases migrated over two years. Most cutovers took
under 3 minutes of downtime; the tier-0 systems nobody wanted to touch
went first, because the process was most trustworthy there.
