首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 主從同步與雙主熱備搭建完整指南

     編輯:MySQL 資料庫相關知識

MySQL 內建複製功能架構解析

MySQL 3.23.15+ 版本提供原生數據庫復制功能,支持主從模式與雙主互備模式。配置集中在 my.cnf/my.ini 中,Windows 環境下服務啟動讀取 my.ini。

環境規劃示例

  • 作業系統:Windows 2000 Professional
  • MySQL 版本:4.0.4-beta-max-nt-log
  • 主庫 A:10.10.10.22
  • 從庫 B:10.10.10.53
  • 同步用戶:backup / 1234
  • 同步數據庫:backup

主從模式(A → B)配置步驟

主庫 A 設置

[mysqld]
server-id=1
log-bin
# log-bin=c:/mysqlbak/mysqllog  # 指定日志目錄與前綴
binlog-do-db=backup             # 僅記錄 backup 庫變更

重啟服務後執行 SHOW MASTER STATUS 確認日志狀態。

從庫 B 設置

[mysqld]
server-id=2
master-host=10.10.10.22
master-user=backup
master-password=1234
master-port=3306
master-connect-retry=60
replicate-do-db=backup

重啟服務,執行 START SLAVE 並用 SHOW SLAVE STATUS 驗證同步狀態。

關鍵提示:從庫首次啟動會在數據目錄生成 master.info。若需修改從庫配置,必須先刪除該文件,否則新配置不生效。

雙主互備模式(A ↔ B)配置

在主從基礎上雙向添加對端的 slave/master 設置:

A 增加 Slave 配置

master-host=10.10.10.53
master-user=backup
master-password=1234
replicate-do-db=backup
master-connect-retry=10

B 增加 Master 配置

log-bin=c:/mysqllog/mysqllog
binlog-do-db=backup

重啟雙機即可實現雙向熱備。同步報錯時查閱 *.err 日志,修正後執行 SLAVE START 恢復同步線程。

性能實測

向 B 批量插入 187 萬條數據,A 庫每秒同步約 2500 條。

其他同步方案對比

方案優點缺點
數據庫目錄同步配置簡單僅支持單向,適合備份
專用同步軟件直觀易用、功能豐富單向同步,如 SQLBalance、MyReplicator
應用層雙寫數據強一致改造成本高、效率低、維護難

論壇數據同步架構建議

  1. 推薦:所有寫操作集中主庫,讀操作本地讀取(需改造程序),利用主從模式同步
  2. 備選:應用層雙寫(安全但效率差,需改造程序)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved