I work for realestate.com.au and we're an agile delivery shop.
We're trying to catch up to some of the best of the best
web-shops like Etsy and so on through continuous delivery.
Millions of deploys a day!
The big kicker with continuous delivery is around schema changes. I'm curious to know how everyone is performing MySQL (InnoDB) schema changes in a agile continuous delivery shop. So please comment and share your thoughts.
How do we do ours? First off we don't have a good story yet about schema changes though I think we're ahead of the pack
- Limit schema changes to column additions / index changes / new tables
- Perform our schema changes online using Master Master Active Standby replication (using hardware load balancer out the front of our databases - Citrix Netscaler)
- Statement based replication
- Application fault tolerance (to a degree) - so …