再见,MySQL 5.7!!

点击关注公众号,Java干货及时送达088fd71ccf734a3b3cd938c8a63d500e.png

推荐学习:几乎涵盖了 Spring Boot 所有操作


来源:OSC 开源社区

GitHub 团队近日分享了他们将 GitHub.com 的底层数据库无缝升级到 MySQL 8.0 的经验。

据介绍,GitHub 使用 MySQL 来存储大量关系数据,因此在不影响网站服务级别目标 (SLO) 的情况下升级主机集群(1200 多台 MySQL 主机)绝非易事。

其团队表示,为了升级到 MySQL 8.0,他们规划、测试和升级本身总共花费了一年多的时间,并且需要 GitHub 内部多个团队的协作。

12443e53d240217acc33380c89132775.png

GitHub 的 MySQL 基础设施概览:

  • 由 1200 多台主机组成,包括数据中心中的 Azure 虚拟机和裸机主机

  • 存储超过 300 TB 的数据,并在 50 多个数据库集群中每秒处理 550 万次查询

  • 每个集群都配置为具有主副设置的高可用性

  • 分区存储数据 —— 利用水平和垂直分片来扩展 MySQL 集群,以及使用 MySQL 集群来存储特定产品领域的数据。此外还为大结构域 (large-domain) 提供了水平分片的 Vitess 集群,这些区域的增长超出了单主 MySQL 集群的规模

  • 庞大的工具生态,包括 Percona Toolkit、gh-ost、orchestrator、freno 和用于操作主机集群的内部自动化工具

由于需要操作两个版本的 MySQL,因此 GitHub 内部使用的工具和自动化设施需要能够兼容处理混合版本,并了解 5.7 和 8.0 之间新的、不同的或已弃用的语法。

为了满足可用性标准,GitHub 团队采取了逐步升级策略,满足在整个过程中进行 checkpoint 和回滚的需求。插播一条:如果你近期准备面试跳槽,点击Java面试库小程序刷题吧,共 2500+ 道,几乎覆盖了所有主流 Java 技术面试题。

下面是他们制定的升级计划:

步骤 1:升级滚动副本 (rolling replica)

ba0a2de38c9de715f3a794be1751689f.png

步骤 2:升级备份拓扑 (replication topology)

e62c2b4392541f9fa32b4b7f8b714c05.png

步骤 3:将 MySQL 8.0 主机提升为主集群

8b712dceca7592b3e044b669693301aa.png

步骤 4:升级面向内部的实例类型

步骤 5:清理,确认集群不需要回滚并成功升级到 MySQL 8.0 后,删除 5.7 服务器。验证工作会至少经历一个完整的 24 小时流量周期,以确保在高峰流量期间不会出现问题。

至于为什么要升级到 MySQL 8.0,GitHub 团队表示主要是因为 MySQL 5.7 的生命周期即将结束。

此外升级后可以获得最新安全补丁、错误修复和性能增强的 MySQL 版本。他们还希望测试 8.0 中的新功能并从中受益,包括即时 DDL、隐形索引和压缩的 bin 日志等。

详细的技术细节查看:https://github.blog/2023-12-07-upgrading-github-com-to-mysql-8-0/


最后推荐下我的《玩转 ChatGPT》专栏!

我也是 ChatGPT 资深玩家了,我创作公众号、小程序Java面试库 每天都会用到它,很多压根不会百度了,让它直接展示方案,不能太轻松了。

这个专栏我会把自己沉淀的一些东西分享出来,让更多的人受益。不过不免费哈,但也不贵,内测价 19.9 元,永久买断学习,前期不赚钱,当交个朋友,冲个销量~

专栏也是刚推出几天,现在已经突破 600+ 订阅了,不管你能不能用上,一杯奶茶钱而已,当作备用,或者就当作多提升一下见识也好。

扫码订阅永久学习:

a6b45fe94dc2a54a714d3788a6da6144.jpeg

1、本专栏分享 ChatGPT 使用和开发指南、应用实践,承诺至少更新 50+ 篇,已更新 30+ 篇,技术人,不玩虚的,带你转玩 ChatGPT。

2、本专栏内测特惠价 19.9 元(永久买断),仅限前 1000 名,学会任何一点都能值回票价。后续会阶梯式涨价,最终定价为 199 元,已订阅的不受影响。

有需要的尽快上车,早订阅,就是优势,后面订阅也行,不过肯定是没有这个价了,满 1000 人后开始涨价。

4339e48c30fbbf87fe78744e53b8bb48.png点击阅读原文链接快速订阅!

猜你喜欢

转载自blog.csdn.net/youanyyou/article/details/135027290
今日推荐