mysql 5.6 双向互备_mysql双主互备
5.則配置同步信息。
change master to master_host='192.168.1.102',master_port=3306,master_user='replication',master_password='test',master_log_file='binlog.000002',master_log_pos=565; //主服務器上執行
change master to master_host='192.168.1.101',master_port=3306,master_user='replication',master_password='test',master_log_file='binlog.000002',master_log_pos=565;//備服務器上執行
6.打開同步 start?slave
7.查看slave的狀態show?slave?status?\G看到如下,說明成功
【半同步機制】
1.進入mysql執行如下:
INSTALL?PLUGIN?rpl_semi_sync_master?SONAME?'semisync_master.so';
INSTALL?PLUGIN?rpl_semi_sync_slave?SONAME?'semisync_slave.so';
同時配置文件增加如下配置,重啟mysql即可。
#半同步,10s超時
rpl_semi_sync_master_enabled=1
rpl_semi_sync_master_timeout=10000
rpl_semi_sync_slave_enabled=1
總結:半同步復制個人感覺是維持數據完整性,安全性的的一個策略,雖會損失一點性能,還是值得的。配置很簡單,關鍵是理解其工作機制。
三個問題:
1.為什么server_id是必須的,而且配置主從同步的server_id不允許重復。
答:mysql寫入到binlog時候會攜帶上server_id,所以在主從同步時候,通過server_id 防止死循環。
假設 server_id的1001 為A,server_id 的 1002 為B,在A機器寫入數據的時候binlog帶上 1001 信息,通過binlog同步到B機器上,B機器上的binlog會記錄的會攜帶上1001的信息,這時候如果是雙主形式的互備,A同步B的時候通過server_id會忽略該數據,防止死循環。
2.異步機制是什么與半同步機制有何差異。
答:簡單來講
a.異步機制任務執行到1即結束事務。
b.半同步機制是執行到3結束事務,如果在2或者3超時時候,會采用半同步機制。
綜述,半同步機制更能保障數據的一致性問題,而異步機制的性能更優。
3.雙主同步如果字段key是自增長的如何保證不沖突?
答:如果雙主互備的情況下,通過auto_increment_increment,即id的自增為2,然后雙主兩臺的id起始值不同,來保障兩臺機器的id完全不相同,這樣在互相切換過程中不會導致id沖突而丟失數據。
總結
以上是生活随笔為你收集整理的mysql 5.6 双向互备_mysql双主互备的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ping 超时时间_华为交换机ping命
- 下一篇: mysql datatable_MySQ