Database Schema Migrations with Zero Downtime
summary
Company moves from infrequent releases to 50+ deployments per day and needs schema changes without downtime. Concrete recipe: record current state with a Flyway baseline snapshot, write non‑destructive migrations (add columns not rename), switch to dual-write + backfill so old code keeps working, then cleanup later. For heavy alters use replication switchover or pt-online-schema-change to avoid table locks. Rollbacks are avoided; prefer roll‑forward and careful monitoring of long migrations, locks, and shard or vendor limitations (Oracle noted).
AI-written summary · about
chapters (32)
- 0:00Intro
- 1:2050+ DEPLOYS PER DAY
- 1:30HIGH AVAILABILITY
- 1:47DATABASE MIGRATIONS
- 2:18WITHOUT DOWNTIME?
- 2:30DATABASE SCHEMA MIGRATIONS
- 5:11TRANSACTIONS
- 6:15FLYWAY
- 7:56LEGACY APPLICATIONS
- 10:21UNDOING MIGRATIONS
- 10:49ROLL BACK OR ROLL FORWARD?
- 13:19RESTORING FROM BACKUPS?
- 13:34ROLLBACKS
- 13:46SIMPLE DEPLOYMENT FLOW
- 14:37CONTINUOUS DELIVERY
- 14:57CONTINUOUS DEPLOYMENT
- 15:10ZERO DOWNTIME DEPLOYS
- 16:00NO MIGRATIONS!
- 16:12DATABASE STATE?
- 17:38OLD APP SHOULD WORK WITH NEW STATE
- 18:01ONE DIFF BACK
- 18:23DECOUPLE
- 18:40NON-DESTRUCTIVE CHANGES
- 18:51BACKWARDS COMPATIBILITY
- 19:20EXAMPLE: RENAMING A COLUMN
- 22:21CHALLENGES
- 24:06STRATEGIES
- 26:03REPLICATION
- 26:23RUN MIGRATION ON FAILOVER
- 29:11PT ONLINE SCHEMA CHANGE
- 32:33RECAP
- 32:50MULTIPLE STEPS
related talks
37mDatabase Schema Migrations with Zero Downtime
35mDatabase migrations without downtime
31mHelp! My Database Is The Bottleneck
59mNavigating the Challenges of CI /CD for Relational Database Schema Changes
27mStrategies for Reliable Database Schema Migrations
33mAdding zero-downtime migrations strategy in SaaS project
57mPatterns of SaaS: Refactoring Databases
34mZero Downtime Database Migrations and Deployments
