您好,登錄后才能下訂單哦!
MySQL主從同步的簡單理解
許多大型網站為了減輕海量用戶對于服務器并發訪問量的性能問題,會使用很多解決的方案,
數據庫主從分離,就是目前主流的一種解決手段。
想一下每個用戶都通過控制層業務層調用服務器數據,用戶量小還好說,
用戶量大的話輕則用戶體驗極差,重則數據庫崩潰甚至數據丟失,那真的就是很嚴重的事情了。
如何解決,解決方案之一就是主從分離。
主從那長話短說就是,一臺服務器我處理不了就用幾臺服務器咯,
但是這些服務器是有主次之分以及職責劃分的。
* 將我們對數據庫的讀寫操作分別放到不同的服務器集群中運行。
* 一般主服務器負責寫入,從服務器負責讀取。
* 主服務器做的操作同步到從服務器中。
* 主從配置只需要配置數據庫,無需修改業務代碼。
那么來講一下具體的工作原理,如圖:
1. 主服務器(Master)將數據信息(Data changes)存儲到二進制日志中(Binary log)
2. 從服務器開啟一個I/O線程(I/O thread),用于連接主從服務器,并拷貝/同步主服務器的操作。
3. 將這些操作同步到中介日志中(Relay log)
4. 從服務器重復主服務器的操作(Replay / Read)
從服務器執行主服務器的同步操作也要一步一步的來,可以類比生產者消費者案例,
所以需要同步到從服務器日志中一步一步的同步執行。
以上就是我個人初學的一個理解吧,如有不對請一定要指出。
圖片來源于慕k網的一些資料
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。