本文主要描述 MySQL Group Replication的簡易原理、搭建過程以及故障維護管理內(nèi)容。由于是新技術,未在生產(chǎn)環(huán)境使用過,本文均是虛擬機測試,可能存在考慮不周跟思路有誤情況,歡迎交流指正。

 

如果轉(zhuǎn)載,請注明博文來源: www.cnblogs.com/xinysu/   ,版權(quán)歸 博客園 蘇家小蘿卜 所有。望各位支持! 

回到頂部(go to top)

1 What's Group Replication 

    主從復制,一主多從,主庫提供讀寫功能,從庫提供寫功能。當一個事務在master 提交成功時,會把binlog文件同步到從庫服務器上落地為relay log給slave端執(zhí)行,這個過程主庫是不考慮從庫是否有接收到binlog文件,有可能出現(xiàn)這種情況,當主庫commit一個事務后,數(shù)據(jù)庫發(fā)生宕機,剛好它的binlog還沒來得及傳送到slave端,這個時候選任何一個slave端都會丟失這個事務,造成數(shù)據(jù)不一致情況。原理圖如下:

 

 

     為了避免出現(xiàn)主從數(shù)據(jù)不一致的情況,MySQL引入了半同步復制,添加多了一個從庫反饋機制,這個有兩種方式設置:

  • 主庫執(zhí)行完事務后,同步binlog給從庫,從庫ack反饋接收到binlog,主庫提交commit,反饋給客戶端,釋放會話;

  • 主庫執(zhí)行完事務后,主庫提交commit ,同步binlog給從庫,從庫ack反饋接收到binlog,反饋給客戶端,釋放會話;

iOS培訓,Swift培訓,蘋果開發(fā)培訓,移動開發(fā)培訓

 

    

網(wǎng)友評論