天天看點

面試官:講講MySQL主從複制的原理和注意事項??

主從複制原理

(1) Master 将資料改變記錄到二進制日志(binary log)中,也就是配置檔案 log-bin 指定的檔案, 這些記錄叫做二進制日志事件(binary log events);

(2) Slave 通過 I/O 線程讀取 Master 中的 binary log events 并寫入到它的中繼日志(relay log);

(3) Slave 重做中繼日志中的事件,把中繼日志中的事件資訊一條一條的在本地執行一次,完 成資料在本地的存儲,進而實作将改變反映到它自己的資料(資料重放)。

面試官:講講MySQL主從複制的原理和注意事項??

注意事項

(1)主從伺服器作業系統版本和位數一緻;

(2) Master 和 Slave 資料庫的版本要一緻;

(3) Master 和 Slave 資料庫中的資料要一緻;

(4) Master 開啟二進制日志,Master 和 Slave 的 server_id 在區域網路内必須唯一;

配置主從複制步驟

Master資料庫

(1) 安裝資料庫;

(2) 修改資料庫配置檔案,指明 server_id,開啟二進制日志(log-bin);

(3) 啟動資料庫,檢視目前是哪個日志,position 号是多少;

(4) 登入資料庫,授權資料複制使用者(IP 位址為從機 IP 位址,如果是雙向主從,這裡的 還需要授權本機的 IP 位址,此時自己的 IP 位址就是從 IP 位址);

(5) 備份資料庫(記得加鎖和解鎖);

(6) 傳送備份資料到 Slave 上;

(7) 啟動資料庫;

以上步驟,為單向主從搭建成功,想搭建雙向主從需要的步驟:

(1) 登入資料庫,指定 Master 的位址、使用者、密碼等資訊(此步僅雙向主從時需要);

(2) 開啟同步,檢視狀态;

Slave 上的配置

(2) 修改資料庫配置檔案,指明 server_id(如果是搭建雙向主從的話,也要開啟二進制 日志 log-bin);

(3) 啟動資料庫,還原備份;

(4) 檢視目前是哪個日志,position 号是多少(單向主從此步不需要,雙向主從需要);

(5) 指定 Master 的位址、使用者、密碼等資訊;

(6) 開啟同步,檢視狀态。

好了,今天就到這兒吧,後續我們實戰以各種方式實作MySQL主從複制,我是冰河,我們下期見!!

冰河原創PDF

回複“并發程式設計”領取《深入了解高并發程式設計(第1版)》PDF文檔。

回複 “并發源碼” 領取《并發程式設計核心知識(源碼分析篇 第1版)》PDF文檔。

回複 ”限流“ 領取《億級流量下的分布式解決方案》PDF文檔。

回複 “設計模式” 領取《深入淺出Java23種設計模式》PDF文檔。

回複 “Java8新特性” 領取 《Java8新特性教程》PDF文檔。

回複 “分布式存儲” 領取《跟冰河學習分布式存儲技術》 PDF文檔。

回複 “Nginx” 領取《跟冰河學習Nginx技術》PDF文檔。

回複 “網際網路工程” 領取《跟冰河學習網際網路工程技術》PDF文檔。