您好,登錄后才能下訂單哦!
1 、主從復制簡介
MySQL 主從復制就是將一個 MySQL 實例(Master)中的數據實時復制到另一個 MySQL 實
例(slave)中,而且這個復制是一個異步復制的過程。
實現整個復制操作主要由三個進程完成的,其中兩個進程在 Slave(sql_thread 和
IO_thread),另外一個進程在 Master(IO 進程)上。
2 、主從復制 原理 、 機制
要實施復制,首先必須打開 Master 端的 binary log(bin-log)功能,否則無法實現。
因為整個復制過程實際上就是 Slave 從 Master 端獲取該日志然后再在自己身上完全順序的
執行日志中所記錄的各種操作。
復制的基本過程如下:
1)、Slave 上面的 IO_thread 連接上 Master,并請求從指定日志文件的指定位置(或者
從最開始的日志)之后的日志內容;
2)、Master 接收到來自 Slave 的 IO_thread 的請求后,通過負責復制的 IO 進程根據請
求信息讀取指定日志指定位置之后的日志信息,返回給 Slave 的 IO_thread。返回信息中除
了日志所包含的信息之外,還包括本次返回的信息已經到 Master 端的 bin-log file 的以及
bin-log pos;
3)、Slave 的 IO_thread 接收到信息后,將接收到的日志內容依次添加到 Slave 端的
relay-log 文件的最末端,并將讀取到的 Master 端的 bin-log 的文件名和位置記錄到
master-info 文件中,以便在下一次讀取的時候能夠清楚的告訴 Master“我需要從某個
bin-log 的哪 個位置開始往后的日志內容,請發給我”;
4)、Slave 的 Sql_thread 檢測到 relay-log 中新增加了內容后,會馬上解析 relay-log
的內容成為在 Master 端真實執行時候的那些可執行的內容,并在本數據庫中執行。
3 、主從復制 原理圖
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。