您好,登錄后才能下訂單哦!
這篇文章主要講解了“Mysql主從復制的三種方式分別是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Mysql主從復制的三種方式分別是什么”吧!
同步復制指的是當主庫提交事務后,binlog已經通過dump線程傳到從庫的中繼日志,主庫需要一直等待從庫的提交確認,從庫重放完成之后,回復一個ACK給主庫,主庫這才結束等待,執行后續操作,注意:如果這個時候有多個從節點,那么主庫等待的時間就越久,所以需要設置一個超時等待時間。
異步復制模式為了解決主庫等待時間過長的問題,將返回確認取消了,也就是說當主庫提交完事務后,不需要等待從庫提交確認,就直接執行后續操作,返回客戶端;但是這個就會造成這樣一個問題:當主機提交完事務后掛了,但是這個時候binlog還沒有同步到從庫,如果強制切換主從的話,就會造成新的主庫數據不完整
半同步方式介于同步和異步復制方式做了一個折中:同樣主庫還是需要等待從庫的確認后才執行后續操作,但是不同的是這次不是等待從庫提交完事務后,才發一個確認通知給主庫,而是當從庫將binlog寫到relaylog后,就會給主庫發送確認通知,這個不僅縮短了等待時間而且還維護了數據的安全性
在半同步復制情況下如果有這樣一個情況:當主庫提交完事務之后,就開始等待從庫的relay寫入返回,如果從庫這個時候發生了意外(有可能被人偷走了),導致主庫等待超時,這個時候主庫就會直接結束等待了,因為事務已經提交了,用戶肯定是可以看到沒有被同步的數據,為了解決這個問題,mysql5.7引入了增強半同步復制: 只有當收到至少一個從庫返回的relay log寫入確認后,才提交事務,也就是說提交事務在收到確認之后
感謝各位的閱讀,以上就是“Mysql主從復制的三種方式分別是什么”的內容了,經過本文的學習后,相信大家對Mysql主從復制的三種方式分別是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。