溫馨提示×

MySQL主從復(fù)制如何配置

小樊
81
2024-10-30 21:44:38
欄目: 云計(jì)算

MySQL主從復(fù)制是一種常見的數(shù)據(jù)庫架構(gòu)模式,用于提高數(shù)據(jù)庫的可用性和性能。以下是一個基本的步驟指南,幫助你配置MySQL主從復(fù)制:

1. 準(zhǔn)備環(huán)境

確保你有一臺主服務(wù)器(Master)和一臺或多臺從服務(wù)器(Slave)。所有服務(wù)器都應(yīng)該安裝并運(yùn)行相同版本的MySQL。

2. 配置主服務(wù)器(Master)

  1. 編輯MySQL配置文件: 打開主服務(wù)器的MySQL配置文件(通常是my.cnfmy.ini),找到以下部分并進(jìn)行配置:

    [mysqld]
    server-id=1  # 主服務(wù)器的唯一標(biāo)識符
    log_bin=mysql-bin  # 啟用二進(jìn)制日志
    binlog_format=ROW  # 使用ROW格式的二進(jìn)制日志
    
  2. 重啟MySQL服務(wù): 保存配置文件并重啟MySQL服務(wù)以應(yīng)用更改:

    sudo systemctl restart mysql
    
  3. 創(chuàng)建用于復(fù)制的用戶: 在主服務(wù)器上創(chuàng)建一個用于復(fù)制的用戶,并授予該用戶必要的權(quán)限:

    CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
    GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
    FLUSH PRIVILEGES;
    
  4. 獲取主服務(wù)器的二進(jìn)制日志坐標(biāo): 記錄下主服務(wù)器的二進(jìn)制日志文件和位置,以便從服務(wù)器可以連接并開始復(fù)制:

    SHOW MASTER STATUS;
    

3. 配置從服務(wù)器(Slave)

  1. 編輯MySQL配置文件: 打開從服務(wù)器的MySQL配置文件(通常是my.cnfmy.ini),找到以下部分并進(jìn)行配置:

    [mysqld]
    server-id=2  # 從服務(wù)器的唯一標(biāo)識符
    relay_log=mysql-relay-bin  # 啟用中繼日志
    log_bin=mysql-bin  # 啟用二進(jìn)制日志(如果還沒有啟用的話)
    binlog_format=ROW  # 使用ROW格式的二進(jìn)制日志
    read_only=ON  # 從服務(wù)器默認(rèn)只讀
    
  2. 重啟MySQL服務(wù): 保存配置文件并重啟MySQL服務(wù)以應(yīng)用更改:

    sudo systemctl restart mysql
    
  3. 配置從服務(wù)器連接到主服務(wù)器: 在從服務(wù)器上,使用之前獲取的二進(jìn)制日志坐標(biāo)來配置復(fù)制:

    CHANGE MASTER TO
        MASTER_HOST='master_ip_address',  # 主服務(wù)器的IP地址
        MASTER_USER='repl',  # 用于復(fù)制的用戶名
        MASTER_PASSWORD='password',  # 用于復(fù)制的密碼
        MASTER_LOG_FILE='recorded_binlog_file',  # 記錄的二進(jìn)制日志文件名
        MASTER_LOG_POS=recorded_binlog_position;  # 記錄的二進(jìn)制日志位置
    
  4. 啟動復(fù)制進(jìn)程: 啟動從服務(wù)器的復(fù)制進(jìn)程以開始同步數(shù)據(jù):

    START SLAVE;
    
  5. 驗(yàn)證復(fù)制狀態(tài): 檢查從服務(wù)器的復(fù)制狀態(tài)以確保一切正常:

    SHOW SLAVE STATUS\G;
    

4. 測試和監(jiān)控

  • 測試連接:確保主服務(wù)器和從服務(wù)器之間的連接正常。
  • 監(jiān)控復(fù)制狀態(tài):定期檢查從服務(wù)器的復(fù)制狀態(tài),確保數(shù)據(jù)同步正常。

通過以上步驟,你應(yīng)該能夠成功配置MySQL主從復(fù)制。如果在配置過程中遇到問題,可以參考MySQL官方文檔或?qū)で笊鐓^(qū)幫助。

0