Pre-Migration (Items 1-18)
Schema & Data Assessment
- Document all source schemas, tables, views, and materialised views
- Catalogue all stored procedures, functions, triggers, and packages
- Map all data types to target equivalents — flag any without direct mapping
- Identify all sequences and auto-increment columns
- Document all foreign key relationships and cascading rules
- List all indexes — primary, unique, composite, partial, and expression-based
- Measure total data volume per table and per schema
- Identify tables with LOB/CLOB/BLOB columns exceeding 100MB
Environment & Infrastructure
- Provision target database with equivalent or greater resources
- Set up staging environment that mirrors production topology
- Configure network connectivity between source and target (VPN/peering)
- Verify sufficient disk space on target (2.5x source data size minimum)
- Set up monitoring and alerting on both source and target
Planning & Risk
- Define success criteria — what constitutes a "completed" migration?
- Document rollback procedure with estimated time for each step
- Test rollback procedure on staging — end to end, timed
- Identify all applications connecting to the source database
- Create communication plan for all stakeholders
During Migration (Items 19-32)
Execution
- Run schema migration first — verify all objects created successfully
- Validate row counts on each table after data load
- Run checksum validation on a sample of rows per table (minimum 1%)
- Verify all sequences are set to values higher than max existing IDs
- Confirm all indexes are created and match source definitions
- Run all stored procedures/functions against test data
- Verify trigger execution order matches source behaviour
Monitoring
- Monitor replication lag if using CDC — must be under threshold before cutover
- Track source database load during migration — watch for performance impact
- Monitor target database resource utilisation (CPU, memory, I/O)
- Log all errors and warnings — classify as blocking vs non-blocking
- Verify no schema changes occur on source during migration window
- Confirm backup of source database completed before cutover
- Validate that application read-only mode is enforced during cutover
Post-Migration (Items 33-47)
Validation
- Re-run full row count comparison — source vs target
- Execute top 20 business-critical queries — compare results
- Run application integration tests against target database
- Verify all scheduled jobs and cron tasks are migrated and running
- Confirm all reporting/BI tools connect and return expected data
- Validate audit trail and logging on target database
Performance
- Run ANALYZE/statistics update on all tables
- Compare query execution times: source baseline vs target
- Monitor P95 query latency for 48 hours post-cutover
- Tune connection pooling settings for new database driver
Compliance & Cleanup
- Verify encryption at rest and in transit on target
- Confirm access controls and roles are correctly migrated
- Update disaster recovery documentation with new database details
- Schedule source database decommission date (minimum 30 days post-migration)
- Document lessons learned and update migration runbook
Want this as a downloadable PDF? Get the full 47-item checklist with detailed verification steps: Download the Migration Checklist →
Ready to automate your next migration?
See how Dflux.ai handles schema mapping, validation, and rollback automatically.
Book a Free Demo →