1、將Master和Slave伺服器都設定為read-only
mysql>SET @@global.read_only=ON;
service mysql stop
開啟GTIDs需要在master和slave伺服器上都設定gtid-mode,log-bin,log-slave-updates,enforce-gtid-consistency(在MySQL 5.6.9之前是--disable-gtid-unsafe-statement )。另外,slave在這個環節還需要增加skip-slave-start參數。
#vi /etc/my.cnf [mysqld] gtid-mode=on log-bin log-slave-updates enforce-gtid-consistency
mysql> change master to -> master_host='xxx.xxx.xxx.xxx', -> master_port=3306, -> master_user='xxx', -> master_password='xxx', -> master_auto_position=1; mysql > start slave;
至此,升級結束。下面我為大家新增一個GTIDs Replication的切換中繼伺服器或Master伺服器的方法。
GTIDs Replication可隨意指定某一伺服器為另一台伺服器的中繼Slave伺服器或Master伺服器。
例如A、B、C三台MySQL伺服器,開始為A是B、C的Master伺服器。目前要將B變成C的中繼伺服器。則具體操作方法如下:
mysql> GRANT REPLICATION SLAVE ON *.* TO 'lyz'@'C的ip地址' IDENTIFIED BY 'lyz';
(1)停用slave
mysql> stop slave;
(2)設定slave
mysql> change master to -> master_host='B的ip地址', -> master_port=3306, -> master_user='lyz', -> master_password='lyz', -> master_auto_position=1;
(3)啟動slave
mysql > start slave;
以上是MySQL之-四步驟實作BinLog Replication升級為GTIDs Replication的程式碼實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!