Jeśli chcesz przywrócić starą wersję:
# Teraz wyłączymy GTID
Niewolnik 192.168.66.7
mysql> set global gtid_mode='on_permissive'; Query OK, 0 rows affected (0.02 sec)
Mistrz 192.168.66.5
mysql> set global gtid_mode='on_permissive'; Query OK, 0 rows affected (0.02 sec)
Niewolnik 192.168.66.7
mysql> set global gtid_mode='off_permissive'; Query OK, 0 rows affected (0.01 sec)
Mistrz 192.168.66.5
mysql> set global gtid_mode='off_permissive'; Query OK, 0 rows affected (0.01 sec)
W tym momencie replikacja zostanie przerwana po stronie niewolnika. zatrzymamy salve i zmienimy pozycję mastera oraz wzmiankę o pliku dziennika, jak poniżej, pokazano błąd ze statusu slave.
Niewolnik 192.168.66.7
mysql> show slave status\G *************************** 1. row *************************** Last_IO_Errno: 13114 Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Cannot replicate anonymous transaction when AUTO_POSITION = 1, at file ./mysql-bin.000007, position 196.; the first event '' at 4, the last event read from './mysql-bin.000007' at 275, the last byte read from './mysql-bin.000007' at 275.' mysql> stop slave; Query OK, 0 rows affected (0.00 sec) mysql> change master to master_log_file='mysql-bin.000007', master_log_pos=196,master_auto_position=0; Query OK, 0 rows affected (0.02 sec) mysql> start slave; Query OK, 0 rows affected (0.00 sec)
Teraz sprawdź, czy replikacja statusu urządzenia podrzędnego będzie działać poprawnie, ale nadal będziemy musieli zatrzymać identyfikatory GTID.
mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.66.5 Master_User: syncstndby Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000007 Read_Master_Log_Pos: 1070076 Relay_Log_File: serverB-relay-bin.000002 Relay_Log_Pos: 1070204 Relay_Master_Log_File: mysql-bin.000007 Slave_IO_Running: Yes Slave_SQL_Running: Yes . . Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 1070076 Relay_Log_Space: 1070415 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 . . Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 1 Master_UUID: 95358015-b479-11ea-ab4c-080027267f61 Master_Info_File: mysql.slave_master_info SQL_Delay: 0 SQL_Remaining_Delay: NULL Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates Master_Retry_Count: 86400 . . Executed_Gtid_Set: 95358015-b479-11ea-ab4c-080027267f61:1-10110 . . Network_Namespace: 1 row in set (0.00 sec)
mysql> select @@global.gtid_owned; +---------------------+ | @@global.gtid_owned | +---------------------+ | | +---------------------+ 1 row in set (0.00 sec)
Mistrz 192.168.66.5
mysql> select @@global.gtid_owned; +---------------------+ | @@global.gtid_owned | +---------------------+ | | +---------------------+ 1 row in set (0.00 sec)
Teraz wyłączymy tryb gtid =off
Niewolnik 192.168.66.7
mysql> set global gtid_mode=off; Query OK, 0 rows affected (0.01 sec)
Mistrz 192.168.66.5
mysql> set global gtid_mode=off; Query OK, 0 rows affected (0.01 sec)
Spowoduje to zatrzymanie zmiany identyfikatora GTID po cofnięciu się
Executed_Gtid_Set:95358015-b479-11ea-ab4c-080027267f61:1-10110
Ale Exec_Master_Log_Pos:181924 Relay_Log_Space:182357 będzie się zmieniał, to wyjście można zaobserwować w statusie show slave.