在使用MySQL主主同步時,有一些坑點需要注意,下面進行一個簡單的介紹。
1. 配置文件
#節點1配置 server-id=1 log_bin=mysql-bin-1 binlog-do-db=test #節點2配置 server-id=2 log_bin=mysql-bin-2 binlog-do-db=test
節點1和節點2的server-id需要不一樣,否則會出現沖突,而log_bin需要根據節點不同設置不同的文件名,binlog-do-db表示只同步test庫,可以根據實際情況設置。
2. GTID
#開啟 GTID gtid_mode=ON enforce_gtid_consistency=ON log_slave_updates=ON
GTID(全局事務標識符)是用于標識全局唯一事務的,開啟GTID可以避免出現主節點數據丟失的情況。
3. 賬號授權
#節點1授權 GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.10.10.2' IDENTIFIED BY 'password'; #節點2授權 GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.10.10.1' IDENTIFIED BY 'password';
通過給予對方節點REPLICATION SLAVE的權限,才能實現主節點數據同步更新到對方節點。
4. 查看同步狀態
#節點1查看狀態 SHOW MASTER STATUS; #節點2查看狀態 SHOW SLAVE STATUS \G;
通過查看同步狀態可以了解主節點和對方節點的同步情況,主節點需要將結果告知對應的對方節點,才能完成主主同步。
在實際場景中,還有很多需要注意的坑點,如數據沖突、網絡延遲等問題,需要根據實際情況綜合考慮。希望本篇文章能對大家理解MySQL主主同步有所幫助。
上一篇css反向運動
下一篇精簡css js文件