Schema changes break production when teams treat migrations like local development scripts.
Expand then contract
Add new columns/tables first, dual-write, backfill, switch reads, then remove old paths.
Lock awareness
Long locks on hot tables cause outages. Prefer batched backfills and online-safe operations.
Rollback plans
Every migration needs a forward-fix and a documented rollback. Hope is not a strategy.