GitHub

Upgrading GitHub.com to MySQL 8.0

Dec 7, 2023Jiaqi Liu, Daniel Rogart, Xin Wu
Upgrading GitHub.com to MySQL 8.0
SummaryAI, from the source post

This post details the successful upgrade of GitHub.com's fleet of over 1200 MySQL hosts to MySQL 8.0. The upgrade process, which took over a year, involved extensive preparation including infrastructure readiness, application compatibility testing in CI and GitHub Codespaces, and a phased rollout strategy. The upgrade plan included rolling replica upgrades, updating replication topology, promoting MySQL 8.0 hosts to primary, and finally, cleanup. A significant focus was placed on maintaining rollback capabilities, which required addressing compatibility issues such as character collation differences (`utf8mb4_0900_ai_ci` vs. `utf8mb4_unicode_520_ci`) and the introduction of roles in MySQL 8.0. The post also touches upon challenges with Vitess clusters and replication delay.

More from the MySQL Performance Optimization with TCMalloc trail