1. 程式人生 > >linux上mysql的gtid主從複製故障切換

linux上mysql的gtid主從複製故障切換

故障切換步驟

主有故障時:(切換步驟,需要把其中的一個從設定為主,另一個設定為其的從庫)

1:檢查從庫上,完成事務的從,誰最接近主庫

server2:   show salve status\G;

          Master_Log_File: mysql-bin3306.000002    ---(越大越接近)
          Read_Master_Log_Pos: 4156773
          Exec_Master_Log_Pos: 4156773

server3:  show salve status\G;

          Master_Log_File: mysql-bin3306.000001   ---(越大越接近)
          Read_Master_Log_Pos: 83795320
          Exec_Master_Log_Pos: 83795320

相比之下server2完成的事務要比server3更接近或則等於server1,現在需要把server3設定為server2的從庫。
2:切換
   1:從庫server3,上重新指定主庫資訊(指向server2)
   mysql> stop slave;   #千萬不要執行 reset master,否則會從最先的GTID上開始執行。
   change master to master_host='127.0.0.1',master_user='rep',master_password='rep',master_port=3306,master_auto_position=1; #指定到server2從上
   start slave;  #成功的切換到新主
3:把業務從server1主庫上切換到server2(完成的事務最接近主庫)--server2當主