MySQL主從復制是在一個MySQL服務器上裝載多個實例,其中有一個為主服務器,其他為從服務器,主服務器把它上面的數據變化通過二進制日志發(fā)送給從服務器,從服務器把日志傳到本地重放就可以實現數據同步了。主從關系的主要作用是可以提高服務器的可用性、可擴展性以及故障恢復能力。
主從復制通常包括以下幾個步驟: 1. 配置主服務器的my.cnf文件開啟二進制日志,并配置日志的路徑和名稱。 2. 登錄主服務器,創(chuàng)建一個具有復制權限的帳號,通常命名為repl,分配密碼。 3. 在從服務器上編輯my.cnf文件,設置server-id,server-id不同則兩個服務器可區(qū)分。 4. 登錄從服務器,配置[client]字節(jié)組監(jiān)聽主服務器。 5. 登錄從服務器,執(zhí)行CHANGE MASTER TO命令,配置主從復制。 6. 啟動從服務器,讓它從主服務器上復制數據。
配置主從復制最關鍵的是要配置正確的日志路徑和名稱。在主服務器上二進制文件的路徑和名稱分別為/var/lib/mysql,mysql-bin,其中/var/lib/mysql表示日志保存的目錄,mysql-bin則表示二進制日志的名稱,每個日志的最大大小為1G。
在同步數據過程中,主服務器把數據的改變記錄在二進制日志中,然后將日志傳給從服務器,從主服務器復制并應用日志來更新數據,這樣就可以保證數據及時的復制到從服務器。
主從復制的實現需要從服務器對主服務器有足夠高的理解,才能更好的實現數據同步。同時,也需要借助一些輔助工具如備份和恢復工具、擴展工具等來減少備份和擴展的費用,提高服務器的性能以及減少數據恢復的復雜度。