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

Linux MySQL 主從同步配置實戰:單向復制搭建與驗證全流程

     編輯:MySQL 綜合教學

主從同步(Master-Slave)實現寫入主庫、異步複製至從庫,支撐讀寫分離、備份卸載等場景。本文以 192.168.1.134 (Master) → 192.168.1.138 (Slave) 為例,記錄標準配置流程:

Master (192.168.1.134) 配置

[mysqld]
server-id = 1
log-bin = /www/mysql/binlog/binlog
binlog-do-db = dbname
binlog-ignore-db = mysql
  1. 創建同步用戶:GRANT REPLICATION SLAVE ON *.* TO 'bravedu'@'192.168.1.%' IDENTIFIED BY 'brave123'; FLUSH PRIVILEGES;
  2. 重啟 Master,FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS\G; 記錄 File、Position,UNLOCK TABLES;。

Slave (192.168.1.138) 配置

[mysqld]
server-id = 2
log-bin = /www/mysql/binlog/binlog
binlog-do-db = dbname
binlog-ignore-db = mysql,information_schema
  1. 創建同步用戶(同 Master)。
  2. 重啟 Slave。
  3. 配置同步位點並啟動:
STOP SLAVE;
CHANGE MASTER TO MASTER_HOST='192.168.1.134', MASTER_USER='bravedu', MASTER_PASSWORD='brave123', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=106;
START SLAVE;

驗證同步狀態

SHOW SLAVE STATUS\G;
-- 關鍵:Slave_IO_Running=Yes, Slave_SQL_Running=Yes, Seconds_Behind_Master=0

主從 vs 主主關鍵差異

項目主從主主
寫入節點單一 Master雙節點均可寫
log_slave_updatesSlave 可選雙方必開
auto_increment無需特殊配置offset/increment 錯開
CHANGE MASTER單向雙向
衝突風險無需業務層路由隔離

生產建議

  • 從庫啟用 read_only=ON(超級用戶除外),防止誤寫入導致同步中斷。
  • 關鍵業務監控 Seconds_Behind_Master,延遲超閾值告警。
  • 定期 pt-table-checksum 校驗主從數據一致性。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved