Cloud

Cloud database migration checklist

In large migrations, downtime is determined by the quality of the plan, not the volume of data moved. This list is for turning a maintenance window of hours into a few minutes.

1. Preparation and decision

  • Write down RPO/RTO targets; get stakeholders to sign off on the accepted downtime.
  • Choose the target service: managed (Azure SQL / RDS / Cloud SQL) or on a VM?
  • Version and compatibility gap analysis: character set, collation, extensions, jobs and triggers.
  • List dependencies: linked servers, external service calls, file-system access, scheduled tasks.
  • Measure data size, daily change volume and the largest tables; estimate replication time.

2. Landing zone (target environment)

  • Network: VPC/VNet, subnets, private endpoints, security groups; VPN/Direct Connect to on-prem.
  • Identity and access: least privilege, service accounts, secret management.
  • Encryption: data at rest and in transit; key management.
  • Backup policy, retention period and a point-in-time recovery (PITR) test.
  • Monitoring: metrics, logs, alert thresholds and a dashboard — ready before the migration.
  • Everything as code (IaC): you must be able to rebuild the environment.

3. Online replication

  • Set up an initial load plus continuous change capture (CDC / logical replication / DMS).
  • Monitor replication lag; it must be near zero before cutover.
  • Move schema objects manually: users/roles, permissions, job schedules, connection strings.
  • Point the application at the target and run read-only and functional tests.
  • Measure a performance baseline on the target; adjust right-sizing.

4. Rehearsal cutover (dress rehearsal)

  • Run the real cutover steps at least once in a test environment (or a copy), timing each step.
  • Every step should have an owner, a command and an expected output written in the runbook.
  • Prepare a verification list: row counts, checksums, critical business flows.
  • Rehearse the rollback scenario too — how do you return to the source?

5. Cutover

  • Enter maintenance mode / stop write traffic.
  • Wait for the last changes to be applied to the target (lag = 0).
  • Synchronise sequence/identity values.
  • Run the verification list; try critical business flows live.
  • Switch the connection string/DNS; make the old source read-only (don't delete it yet).
  • Watch monitoring closely: error rate, latency, locking.

6. After the migration

  • 24–72 hours of close observation; track performance and cost metrics.
  • Right-sizing, reservation/saving plans and shutting down unnecessary environments.
  • Decommission the old source in a planned way once the rollback window has closed.
  • Update the runbook and architecture doc; write down lessons learned.

Golden rule: the cutover should not be something tried for the first time on the day. At least one full rehearsal plus a ready rollback plan turns downtime from hours into minutes.

We can adapt this list to your environment and run the migration with you — see our Managed Database service.

Migrate with minutes of downtime

We'll draft a target architecture and a rehearsal-based migration roadmap for your current setup.

Book an assessment