Mysql的複製 半同步和同步的區別

2021-10-10 20:54:25 字數 616 閱讀 6120

非同步複製(asynchronous replication)

mysql預設的複製即是非同步的,主庫bai在執行完客戶端提交的事du務後會立即將結zhi果返給給客戶端,並不關心從庫是否已經接收並處理,這樣就會有乙個問題,主如果crash掉了,此時主上已經提交的事務可能並沒有傳到從上,如果此時,強行將從提公升為主,可能導致新主上的資料不完整。

全同步複製(fully synchronous replication)

指當主庫執行完乙個事務,所有的從庫都執行了該事務才返回給客戶端。因為需要等待所有從庫執行完該事務才能返回,所以全同步複製的效能必然會收到嚴重的影響。

半同步複製(semisynchronous replication)

介於非同步複製和全同步複製之間,主庫在執行完客戶端提交的事務後不是立刻返回給客戶端,而是等待至少乙個從庫接收到並寫到relay log中才返回給客戶端。相對於非同步複製,半同步複製提高了資料的安全性,同時它也造成了一定程度的延遲,這個延遲最少是乙個tcp/ip往返的時間。所以,半同步複製最好在低延時的網路中使用。

MySQL半同步複製

1 從mysql5.5開始,mysql以外掛程式的形式支援半同步複製。如何理解半同步呢?首先我們來看看非同步,全同步的概念 非同步複製 asynchronous replication mysql預設的複製即是非同步的,主庫在執行完客戶端提交的事務後會立即將結果返給給客戶端,並不關心從庫是否已經接收...

MySQL 複製過濾和半同步複製

半同步複製主要是為了考慮和解決主從資料一致性的問題,5.5 5.6版本出現的這個功能,然後在5.7版本以後因為出現了mgr複製,就完全的被mgr進行代替了,現在主要是跟mgr進行對比的。半同步複製和普通主從的說明 1 普通主從 主庫dump thread傳送給io thread資料,io接收到資料寫...

MySQL的非同步複製 全同步複製與半同步複製

非同步複製 非同步複製,主庫將事務 binlog 事件寫入到 binlog 檔案中,此時主庫只會通知一下 dump 執行緒傳送這些新的 binlog,然後主庫就會繼續處理提交操作,而此時不會保證這些 binlog 傳到任何乙個從庫節點上。半同步複製 半同步複製,是介於全同步複製與全非同步複製之間的一...