mysql 的複製原理以及流程

mysql複製的三個線程:主庫線程,從庫I/O線程,從庫SQL線程;

複製流程:(1) I/O 線程向主庫發出請求

                  (2)主庫線程響應請求,並推BINLOG 日誌到從庫

                   (3)I/O 線程收到線程並記入中繼日誌

                    (4)SQL 線程從中繼日誌讀取SQL,並記入從庫binlog 日誌,FLUSH進硬盤

一致性延時性,數據恢復;

1,主從複製一致性由BINLOG執行順序保證(TIMESPAN+POS);

 日誌越詳細,主從一致性越容易保證

延時性:延時表現爲 延遲時間=從庫執行SQL完成的時刻-主庫開始執行SQL時間;

數據恢復 備份時記錄的BINLOG位置點;

(3) 工作遇到的複製BUG的解決方法

 答:這個問題感覺描述並不準確,不清楚是主從複製故障還是bug

    故障一般由於主鍵衝突,鏈接不上主庫,找不到對應的binlog位置等引起;

    解決方法是跳過沖突,檢查主從鏈接,找正確的pos

bug不常見,筆者碰到過一次,分享如下:

      環境:主庫從庫都是虛機,每十分鐘與宿主機同步一次時間,大約每次與主機相差2秒;

      表現:從庫複製時重複執行兩秒之內的日誌;

         從庫showslave status\Gbehind_master_pos600000之間循環,每兩秒一次;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章