Two cutover plans, and the six weeks nobody replicated
The migration has been running for six weeks. Change data capture has kept the target within seconds of the source that whole time, validation passes, row counts match, and the team is ready to cut over on Saturday.
The source did not stand still for six weeks. Two indexes were added for a slow report, a column got a default, a stored procedure was rewritten, and a new service account was granted read on three tables.
Boundaries, outermost first: The source, still live: Source database (DDL too) The target: Target database (rows only) Outside every boundary: DMS task (data only), Schema drift (nobody did) Connections: Source database calls DMS task — rows DMS task calls Target database Schema drift must NOT reach Target database — never arrives
Boundaries, outermost first: The source, still live: Source database (DDL too) The target: Target database (rows + DDL) Outside every boundary: DMS task (data only), Schema drift (replayed) Connections: Source database calls DMS task — rows DMS task calls Target database Schema drift controls Target database — re-applied by hand