Here I give a lightning talk on how we mitigated the risk of upgrading the version of MySQL used in one of TIM Group’s most important databases.
Our approach to risk mitigation was Rollbackability. Rather than spend all our time ensuring that nothing would go wrong, we decided to plan the upgrade such that if anything did go wrong, we could rollback safely. One complicated replication topology, double the use of computing resource and a sprinkling of unsupported MySQL behaviour later, we safely upgraded versions with minimal impact to the business, knowing that we had “Undo” at every step of the way.
The diagrams used in the talk, showing each step in the process, are available here.