Zero Downtime Database Migrations and Deployments
summary
Battle-tested, actionable procedures for running schema changes without outages: backwards-compatible migrations done in small steps, batch data fills, and zero-downtime rollouts; concrete ops fixes like PHP-FPM pool warmup and symlinked atomic releases to avoid inconsistent loads; examples from a site with 300,000 daily visitors doing 10–30 deployments per day; migration scripts and reindexing workflows are shown and proven to work in production, not theoretical best practices.
AI-written summary · about
chapters (34)
- 0:00Introduction
- 1:18Why should I care
- 1:42Get quick feedback
- 2:15Write it from scratch
- 6:07Ideal Workflow
- 6:56Downtime Cost
- 7:44Downtime Risk
- 8:24Real Story
- 9:30Dark Side of the Moon
- 9:51Database Migration
- 10:41Migration and Deployment
- 11:47Migration rollbacks
- 13:18Optional Column
- 14:23Table
- 14:57Migration
- 16:09Paradox
- 17:30Remove column
- 17:48Make column optional
- 18:24Removing column
- 18:40Rename column
- 19:12Change column type
- 20:04Create table
- 21:40Create separate table
- 22:20Stick search
- 23:11Upgrade
- 25:29New Data
- 26:22Automation
- 27:09Directory Structure
- 28:02Automatic Deployment
- 28:53Automatic Deployment Problem 1
- 33:06Caching
- 34:22Running a cron
- 35:31Logging errors
- 36:16Conclusion
related talks
37mDatabase Schema Migrations with Zero Downtime
36mUsing migrations and fixtures
43mStepping into the future: Migrating & Deploying PHP7
42mHighload at the Intersection of DevOps and PHP Development
47mMigrating to PHP 7
46mDevops for PHP Developers
53mHopping in the Clouds: migration between cloud providers
38mWhat's Really to Blame?
