sql >> Database >  >> RDS >> Mysql

Terugdraaien naar traditionele replicatie vanuit GTID

Als je terug wilt naar oud:

# Nu gaan we GTID's uitschakelen

Slaaf 192.168.66.7

mysql> set global gtid_mode='on_permissive';
Query OK, 0 rows affected (0.02 sec)

Master 192.168.66.5

mysql> set global gtid_mode='on_permissive';
Query OK, 0 rows affected (0.02 sec)

Slaaf 192.168.66.7

mysql> set global gtid_mode='off_permissive';
Query OK, 0 rows affected (0.01 sec)

Master 192.168.66.5

mysql> set global gtid_mode='off_permissive';
Query OK, 0 rows affected (0.01 sec)

Op dit punt wordt de replicatie afgebroken aan de slave-zijde. we zullen de zalf stoppen en de masterpositie en de logbestandsvermelding veranderen zoals hieronder de fout wordt getoond vanuit de slavestatus.

Slaaf 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)

Controleer nu of de replicatie van de slavestatus goed werkt, maar we moeten nog steeds de GTID's stoppen.

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)

Master 192.168.66.5

mysql> select @@global.gtid_owned;
+---------------------+
| @@global.gtid_owned |
+---------------------+
|                     |
+---------------------+
1 row in set (0.00 sec)

Nu zullen we de gtid-mode uitschakelen =uit

Slaaf 192.168.66.7

mysql> set global gtid_mode=off;
Query OK, 0 rows affected (0.01 sec)

Master 192.168.66.5

mysql> set global gtid_mode=off;
Query OK, 0 rows affected (0.01 sec)

Dit stopt met het wijzigen van de GTID nadat u terug bent gegaan

Executed_Gtid_Set:95358015-b479-11ea-ab4c-080027267f61:1-10110

Maar Exec_Master_Log_Pos:181924 Relay_Log_Space:182357 zal blijven veranderen, deze output kan worden waargenomen in de slave-status weergeven.


  1. Risico bij gebruik van dynamisch geheugen binnen Hyper-V

  2. SQL Server BCP export beschadigd bestand?

  3. Hoe maak je een back-up en herstel je een PostgreSQL-database

  4. Postgresql:Hoe selecteer ik de top n procent (%) items uit elke groep/categorie