Master (寫入) → Binlog → Slave (讀取/備份)
[mysqld]
log-bin
binlog-do-db = dbname
server-id = 1
# 或使用 wildcard 過濾
replicate-wild-do-table = dbname.%
replicate-wild-ignore-table = dbname.tmp_%
GRANT FILE ON dbname.* TO 'sync_user'@'slave_host' IDENTIFIED BY 'sync_pass';
FLUSH PRIVILEGES;
[mysqld]
master-host = master_ip
master-user = sync_user
master-password = sync_pass
master-port = 3306
server-id = 2
mysqladmin -u root -p shutdownsafe_mysqld --defaults-file=master.cnf &master-bin.000001safe_mysqld --defaults-file=slave.cnf &data/master.info 記錄同步位點-- Master
SHOW MASTER STATUS;
-- File: master-bin.000001, Position: 12345, Binlog_do_db: dbname
-- Slave
SHOW SLAVE STATUS\G
-- Slave_IO_Running: Yes, Slave_SQL_Running: Yes
-- Seconds_Behind_Master: 0
Seconds_Behind_Master 增大 → 網路延遲、Slave SQL 執行慢、Master 負載高SHOW SLAVE STATUS 的 Last_Errormk-table-checksum (Percona Toolkit) 定期校驗