1. 程式人生 > >Centos 7.4 Mysql 8.0 Switching slave from master-slave to chain replication 備庫切換鏈結構

Centos 7.4 Mysql 8.0 Switching slave from master-slave to chain replication 備庫切換鏈結構

介紹

當設定了主從複製,伺服器B和C從伺服器A複製(A是Master伺服器,B、C是Slave伺服器):伺服器A - >(伺服器B,伺服器C),現在希望使伺服器C成為伺服器B的從屬伺服器,則必須在伺服器B和伺服器C上停止複製。然後執行START SLAVE UNTIL命令將它們帶到相同的主日誌位置。之後,可以從伺服器B獲取主日誌位置,並在伺服器C上執行CHANGE MASTER TO命令。

安裝

1 設定伺服器C

關閉C伺服器主備

mysql> STOP SLAVE;
mysql> SHOW SLAVE STATUS\G

在這裡插入圖片描述

2 設定伺服器B

mysql> STOP SLAVE;
mysql> SHOW SLAVE STATUS\G

在這裡插入圖片描述

3 設定日誌

將伺服器B日誌位置與伺服器C進行比較,找出哪個是與伺服器A的最新同步。通常,由於先停止的C伺服器,所以一般情況下是B伺服器較新。 在本文是B伺服器較新

4 設定C伺服器同步為止

這裡設定的應該是日誌較早的伺服器,指向日誌較新的伺服器,我這裡一樣,所以是C指向B 在C伺服器執行

mysql> START SLAVE UNTIL MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=3630;
mysql> SHOW WARNINGS\G
mysql> SHOW SLAVE STATUS\G

在這裡插入圖片描述 將C伺服器更新為與B伺服器相同

5 開啟B伺服器同步

mysql> START SLAVE;
mysql> SHOW SLAVE STATUS\G

6 開啟C伺服器同步

mysql> STOP SLAVE;
mysql> CHANGE MASTER TO MASTER_HOST = '192.168.200.102', MASTER_USER = 'root', MASTER_PASSWORD = 'root', MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=2897;
mysql> START SLAVE;
mysql> SHOW SLAVE STATUS\G