MySQL 原生支援單向異步復制:主庫寫入二進制日志,從庫透過 I/O 線程拉取、SQL 線程重放,實現數據同步。這一機制不僅是高可用基石,更能為業務帶來負載均衡、異地備份、高可用三大實質紅利。

將寫操作(INSERT/UPDATE/DELETE)路由至主庫,讀操作(SELECT)分流至一或多個從庫,顯著降低主庫壓力、縮短響應時間。兩種常見架構:
關鍵權衡:同步延遲 vs. 一致性要求。 金融交易、庫存扣減需強一致,必須走主庫或採用半同步復制(rpl_semi_sync_master=ON);報表、推薦、搜尋可容忍毫秒~秒級延遲,充分發揮從庫讀擴展價值。
傳統本地備份佔用主庫資源、且無法抵禦機房級災難。主從復制天然實現異地熱備:
mysqldump、xtrabackup、快照),完全不影響主庫業務。兩大前置條件:
主庫故障時,將從庫提升為新主庫,實現服務連續性。兩種切換策略:
生產環境建議搭配 MHA、Orchestrator、GTID 自動化故障轉移工具,實現「檢測→切換→通知」全流程無人值守。
嚴禁在從庫手動寫入數據! 從庫唯讀(read_only=ON、super_read_only=ON),任何直接寫入都會導致主從數據分歧,甚至複製中斷。應用層路由邏輯需嚴格區分讀寫請求,防止誤路由。
MySQL 主從復制以極低成本換取:讀擴展、異地容災、高可用 三重保障。關鍵在於:根據業務一致性要求選擇同步模式、從庫規格預留備份冗餘、自動化故障轉移落地、嚴守從庫唯讀原則。把這四點做到位,復制就是你架構中最可靠的杠桿。