개발노트/SQL&DB
Mysql GTID-based Replication 오류 Skip 하기
Mr.star
2019. 9. 5. 10:08
뚜렷이 어떤 SQL 에러가 발생한 지 확인 가능하고, 그걸 Skip 해도 된다는 확신이 있으면 이 방법이 가장 쉽고 빠르다.
1. 문제가 된 gtid 트랜잭션 번호 찾기
2. 문제가 된 gtid 트랜잭션 건너 띄도록 빈(empty) 트랜잭션 주입
mysql> SET GTID_NEXT="c85b621b-8fd3-11e8-862c-020051680009:66194695";
Query OK, 0 rows affected (0.00 sec)
mysql> begin;
Query OK, 0 rows affected (0.00 sec)
mysql> commit;
Query OK, 0 rows affected (0.01 sec)
mysql> SET GTID_NEXT="AUTOMATIC";
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;
Query OK, 0 rows affected (0.01 sec)
참고
Repair MySQL 5.6 GTID replication by injecting empty transactions
Repair MySQL 5.6 GTID replication by injecting empty transactions. Is this an easy way to skip a single transaction?
www.percona.com
아래 글은 binlog position 으로 오류가 발생한 gtid를 찾아내는 방법도 나와있음
How To Skip a Transaction on MySQL replication slave When GTIDs Are Enabled – The Geek Diary
www.thegeekdiary.com
반응형