Home / Companies / GitHub / Blog / Post Details
Content Deep Dive

Upgrading GitHub.com to MySQL 8.0

Blog post from GitHub

Post Details
Company
Date Published
Author
Jiaqi Liu, Daniel Rogart, Xin Wu
Word Count
2,509
Language
English
Hacker News Points
-
Summary

GitHub's upgrade of its MySQL infrastructure to version 8.0 involved a complex and collaborative process lasting over a year, addressing both technical challenges and the need for high availability. The motivation for the upgrade stemmed from MySQL 5.7 nearing end of life, alongside the desire to leverage new features and enhanced security in 8.0. The upgrade strategy included careful planning, extensive testing, and a phased rollout to maintain service level objectives and agreements. A significant aspect of the upgrade was ensuring the ability to rollback without disruption, which required meticulous replication management between MySQL 5.7 and 8.0. The project highlighted the importance of observability, consistent client configurations, and partitioned data as critical factors for success. Furthermore, it underscored the need for automation in future upgrades to improve efficiency and reduce manual intervention, ultimately aiming for a more scalable and resilient database infrastructure.