首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

MySQL Master/Slave 複寫同步設定完整實作指南

     編輯:關於SqlServer

測試環境:RedHat 9.0 + MySQL 3.23.57,資料近乎即時同步。以下為完整設定步驟:

架構規劃

角色IP主機名
Master192.168.1.2A 伺服器
Slave192.168.1.3B 伺服器

Master 端設定

  1. 建立複寫帳號授權:
    GRANT FILE ON *.* TO backup@192.168.1.3 IDENTIFIED BY '1234';
  2. 停止 MySQL:mysqladmin -u root -p shutdown
  3. 備份全部資料庫:tar -cvf /tmp/mysql.tar /var/lib/mysql(需停機狀態)
  4. 修改 /etc/my.cnf [mysqld] 區段:
    log-bin
    server-id=1
    sql-bin-update-same
    binlog-do-db=vbb
  5. 重啟 MySQL,/var/lib/mysql 將產生 .index 二進位記錄索引檔

Slave 端設定

  1. 修改 /etc/my.cnf [mysqld] 區段:
    master-host=192.168.1.2
    master-user=backup
    master-password=1234
    master-port=3306
    server-id=2
    master-connect-retry=60
    replicate-do-db=vbb
    log-slave-updates
  2. 將 Master 的 mysql.tar 複製到 Slave /tmp
  3. 解壓縮還原:
    cd /var/lib
    tar xvf /tmp/mysql.tar
    chown -R mysql:mysql mysql
  4. 重啟 Slave MySQL,/var/lib/mysql 將產生 master.info 記錄 Master 連線資訊

驗證測試

情境預期結果
網路正常,Master 異動資料Slave 即時同步反映
Slave 斷線/當機,Master 異動資料Slave 重啟後自動追上同步

關鍵參數說明

  • log-bin:啟用二進位記錄(複寫核心)
  • server-id:主從必須不同
  • binlog-do-db/replicate-do-db:指定同步資料庫,避免同步系統庫
  • master-connect-retry:斷線重試間隔(秒)
  • log-slave-updates:Slave 亦記錄二進位日誌,支援鏈式複寫

完成上述步驟即可建立穩定的 MySQL Master/Slave 複寫架構。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved