Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用
來(lái)源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-09 09:41:53
Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用
Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用:有同學(xué)討論到Transfer能否支持雙主結(jié)構(gòu),答案是支持的,這里簡(jiǎn)要描述下。 背景 Transfer既可以當(dāng)作主從庫(kù)之外的工具來(lái)用,也可以本身充當(dāng)slave的角色。本文分別描述在這兩種使用場(chǎng)景下的部署結(jié)構(gòu)和切換動(dòng)作。 Slave模式 a) 結(jié)構(gòu) - 這個(gè)就是最簡(jiǎn)單的雙主啦
導(dǎo)讀Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用:有同學(xué)討論到Transfer能否支持雙主結(jié)構(gòu),答案是支持的,這里簡(jiǎn)要描述下。 背景 Transfer既可以當(dāng)作主從庫(kù)之外的工具來(lái)用,也可以本身充當(dāng)slave的角色。本文分別描述在這兩種使用場(chǎng)景下的部署結(jié)構(gòu)和切換動(dòng)作。 Slave模式 a) 結(jié)構(gòu) - 這個(gè)就是最簡(jiǎn)單的雙主啦

有同學(xué)討論到Transfer能否支持雙主結(jié)構(gòu),答案是支持的,這里簡(jiǎn)要描述下。 背景 Transfer既可以當(dāng)作主從庫(kù)之外的工具來(lái)用,也可以本身充當(dāng)slave的角色。本文分別描述在這兩種使用場(chǎng)景下的部署結(jié)構(gòu)和切換動(dòng)作。 Slave模式 a) 結(jié)構(gòu) - 這個(gè)就是最簡(jiǎn)單的雙主啦,Tr
有同學(xué)討論到Transfer能否支持雙主結(jié)構(gòu),答案是支持的,這里簡(jiǎn)要描述下。
背景
Transfer既可以當(dāng)作主從庫(kù)之外的工具來(lái)用,也可以本身充當(dāng)slave的角色。本文分別描述在這兩種使用場(chǎng)景下的部署結(jié)構(gòu)和切換動(dòng)作。
Slave模式
a) 結(jié)構(gòu)
-
這個(gè)就是最簡(jiǎn)單的雙主啦,Transfer呢?代碼直接寫到這兩個(gè)Master里面啦,所以他們就是Transfer.
b) 切換
DBA同學(xué)就用你最熟悉的切換過(guò)程去操作。
1) 停止對(duì)Master1的更新
2) 確定數(shù)據(jù)完全同步
3) 將更新引Master2
這里由Transfer的機(jī)制保證步驟2)的時(shí)間會(huì)很短(因?yàn)闊o(wú)延遲)。
工具模式
a) 結(jié)構(gòu)
如果你比較擔(dān)心數(shù)據(jù)安全,怕這個(gè)patch作為直接充當(dāng)master1和master2會(huì)有風(fēng)險(xiǎn),(這是負(fù)責(zé)任的態(tài)度!),就用上圖表示的結(jié)構(gòu)。
其中Transfer1(T1)和Master1(M1)在同一個(gè)機(jī)器上,(Transfer1)T2和(Master)M2共同在另外一個(gè)機(jī)器上。
斜線表示主從關(guān)系,T1是M2的從庫(kù),T2是M1的從庫(kù)。
垂直線表示更新關(guān)系,T1收到的同步命令用與更新M1, T2更新M2
b) 切換
切換過(guò)程跟第一種模式的一模一樣。
小結(jié)
兩種模式的取舍上,第一種運(yùn)維比較簡(jiǎn)單,但是風(fēng)險(xiǎn)比較大,如果Transfer有bug,要更新版本,或者要換會(huì)原來(lái)的主從時(shí),必須得重啟Master1和Master2,這種操作并不是所有的系統(tǒng)都能容忍。
第二種模式我比較推薦。好處有以下幾個(gè):
1、Transfer本身不帶數(shù)據(jù),就算coredump了也不會(huì)影響數(shù)據(jù)服務(wù)。同步過(guò)程自然要切換回原來(lái)的主從方法,就讓M1跟M2直連。
(看官問(wèn):怎么你這推廣東西的說(shuō)來(lái)說(shuō)去不是bug就是coredump的?
筆者答:雖然我已經(jīng)做了自認(rèn)為足夠的測(cè)試,但風(fēng)險(xiǎn)總要說(shuō)明,這是負(fù)責(zé)任的態(tài)度,不然回頭你用了把數(shù)據(jù)服務(wù)搞掛,跨省我,咋整?)
2、Master要升級(jí)版本(比如你以后要升級(jí)成5.6),Transfer可以不改變。
當(dāng)然,兩種都是支持的,膽子大的可以把第一種用起來(lái),免費(fèi)保修還不行嘛。
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用
Transfer在MySQL雙主同步架構(gòu)中的應(yīng)用:有同學(xué)討論到Transfer能否支持雙主結(jié)構(gòu),答案是支持的,這里簡(jiǎn)要描述下。 背景 Transfer既可以當(dāng)作主從庫(kù)之外的工具來(lái)用,也可以本身充當(dāng)slave的角色。本文分別描述在這兩種使用場(chǎng)景下的部署結(jié)構(gòu)和切換動(dòng)作。 Slave模式 a) 結(jié)構(gòu) - 這個(gè)就是最簡(jiǎn)單的雙主啦