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

MySQL 主從複製搭建全流程實戰(CentOS 5.5 雙節點)

     編輯:MySQL 綜合教學

MySQL 主從複製搭建全流程實戰

基於 CentOS 5.5 雙虛擬機環境,詳細記錄 MySQL 主從複製的原理、配置步驟、驗證方法與常見坑點,適用於讀寫分離、備份容災架構基礎建設。

環境準備

角色IPServer-ID說明
Master192.168.1.101101寫入節點,開啟 Binlog
Slave192.168.1.105105讀取/備份節點,同步 Binlog
  • 雙節點 MySQL 版本一致
  • 網絡互通,防火牆放行 3306

核心原理

  1. Master 開啟二進制日志,記錄所有 DDL/DML 操作
  2. Slave 通過 I/O 線程拉取 Master Binlog 存為本地 Relay Log
  3. Slave SQL 線程重放 Relay Log 實現數據同步
  4. 延伸:慢查詢日志可獨立開啟,用於 SQL 調優,非複製必需

步驟 1:Master 配置 my.cnf

# /etc/my.cnf
[mysqld]
log-bin=mysql-bin           # 啟用 Binlog,文件名前綴
binlog_format=mixed         # 混合模式:Statement/Row 自動切換
server-id=101               # 全局唯一,建議用 IP 末段

Master my.cnf 配置

service mysqld restart

步驟 2:Slave 配置 my.cnf

[mysqld]
log-bin=mysql-bin
binlog_format=mixed
server-id=105               # 唯一,不可與 Master 重複
service mysqld restart

步驟 3:Master 創建同步專用賬戶

mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'SlavePass123!';
FLUSH PRIVILEGES;

創建同步賬戶

  • REPLICATION SLAVE:僅賦予複製所需最小權限
  • '%':允許任意 IP 連接,生產建議限制具體 Slave IP

步驟 4:獲取 Master Binlog 當前坐標(凍結寫入)

關鍵:記錄 File 與 Position,之後不要在 Master 執行任何寫操作,否則坐標失效。

步驟 5:Slave 配置同步參數並啟動

START SLAVE

  • MASTER_LOG_POS 不加引號,否則語法錯誤

步驟 6:驗證同步狀態

成功標誌:

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