本文記錄 MySQL 5.1.73 版本主從複製搭建的關鍵配置步驟。注:原文內容較早且僅包含前兩節,以下補全標準化流程供參考。
主從雙節點均完成 MySQL 5.1.73 安裝,確保版本一致。
[mysqld] 區塊):server-id=1 # 唯一標識,主庫通常為 1 log-bin=mysql-bin # 啟用二進制日誌 binlog-do-db=your_db # 需同步的資料庫(可多行) binlog-ignore-db=mysql # 不同步的系統庫 sync_binlog=1 # 每次提交刷盤,最高安全性 innodb_flush_log_at_trx_commit=1
service mysqld restartGRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%' IDENTIFIED BY 'repl_password'; FLUSH PRIVILEGES;
SHOW MASTER STATUS; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 107 | your_db | mysql | +------------------+----------+--------------+------------------+
記錄 File 與 Position,從庫配置需用到。
server-id=2 # 唯一,不可與主庫衝突 relay-log=relay-bin # 中繼日誌 read-only=1 # 建議從庫只讀 replicate-do-db=your_db # 需同步的庫 replicate-ignore-db=mysql
CHANGE MASTER TO MASTER_HOST='10.241.226.110', MASTER_USER='repl_user', MASTER_PASSWORD='repl_password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107;
START SLAVE; SHOW SLAVE STATUS\G -- 關鍵指標: Slave_IO_Running: Yes Slave_SQL_Running: Yes Seconds_Behind_Master: 0
SHOW SLAVE STATUS\G 看 Last_Error,常見主鍵衝突、字符集不一致。innodb_flush_log_at_trx_commit=2、sync_binlog=0、並行複製(5.6+)。主從複製是高可用架構基石,配置規範化、監控自動化是穩定運行關鍵。