
去年(2023年10月25日),隨著MySQL 5.7.44發(fā)布,宣告5.7正式停止開發(fā)和維護(hù)。
而不少企業(yè)選擇把MySQL 5.7升級(jí)到8.0。
那么你所在的公司,現(xiàn)在使用了哪些MySQL版本呢?
Github也在去年把MySQL升級(jí)到了8.0。
他們分享了詳細(xì)的升級(jí)過程,以及遇到的一些問題,地址如下:
https://github.blog/2023-12-07-upgrading-github-com-to-mysql-8-0/
我們就來總結(jié)一下大致步驟。
第一步
先升級(jí)部分副本,然后將部分只讀流量切上去,也會(huì)保留足夠的5.7副本,以方便回滾
第二步
如果只讀流量經(jīng)過8.0的驗(yàn)證,沒問題,就調(diào)整復(fù)制拓?fù)錇橄聢D形式

一個(gè)8.0的候選,直接接在5.7主庫后面
8.0的從庫下游又創(chuàng)建兩個(gè)復(fù)制鏈
一部分是5.7的從(暫時(shí)不提供查詢,用來做回滾用的)
另外一部分是8.0的從,用來承擔(dān)只讀查詢。
第三步
通過Orchestrator,執(zhí)行fAIlover將上圖MySQL 8.0的從庫提升為主。
這個(gè)時(shí)候,拓?fù)渥兂闪艘粋€(gè)8.0的主,它下游附帶了兩個(gè)復(fù)制鏈組:
一部分是5.7的從(暫時(shí)不提供查詢,用來做回滾用的)。
另外一部分是8.0的從,用來承擔(dān)只讀查詢。
并且Orchestrator還把5.7的主機(jī)列為故障轉(zhuǎn)移的黑名單,防止發(fā)生切換的時(shí)候,又出現(xiàn)5.7的實(shí)例提升為主的情況。
第四步
升級(jí)其他用于備份或者非生產(chǎn)的實(shí)例
第五步
如果在8.0的版本下運(yùn)行了足夠長的時(shí)間(至少24小時(shí)),則把集群內(nèi)5.7版本的MySQL全刪除。
那么,你現(xiàn)在所在的公司,線上環(huán)境使用的是哪些MySQL版本呢?






