source

Maria에서 다중 마스터 복제 오류를 수정하는 방법DB

gigabyte 2022. 9. 18. 10:14
반응형

Maria에서 다중 마스터 복제 오류를 수정하는 방법DB

MariaDB에 Multi-Master Ring Replication 설정이 있습니다.3 서버

서버 중 하나의 디스크 공간이 부족하여 서버를 다시 시작해야 했습니다.그 후 2개의 슬레이브서버가 슬레이브상태에서 이 에러를 보고합니다.

Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Error: connecting slave requested to start from GTID 1-1-426253, which is not in the master's binlog'

이 에러로부터 슬레이브를 회복하는 방법이 매우 혼란스럽습니다.마스터의 올바른 GTID에서 시작하는 슬레이브 서버의 위치를 가르쳐 주세요.

감사합니다.

난 모든 것을 다시 작동시켰다.마스터 서버에 접속하여 SHOW MASTER STATUS 라고 입력하면 마스터 로그와 포지션 번호를 알 수 있습니다.

그리고 나서 나는 그 정보를 노예에게 사용했고 이렇게 했다.

STOP SLAVE 'MDB1';

CHANGE MASTER "MDB1" TO master_host="xxx.xxx.xxx.xxx", master_port=3306, master_user="****", master_password="****", master_log_file="mariadb-bin.000394", master_log_pos=385;

START SLAVE 'MDB1';

정상적으로 동작하고 있는 것을 확인하고, GTID를 사용하는 것으로 되돌렸습니다.

STOP SLAVE 'MDB1';

CHANGE MASTER "MDB1" TO master_use_gtid=slave_pos;

START SLAVE 'MDB1'; 

그 후 모든 것이 다시 작동되었다.

Moshe L, 여기 내 마스터의 binlog 설정입니다.

server-id = 1
gtid_domain_id = 1
gtid_strict_mode = 1
report_host             = MDB1
auto_increment_increment = 3
auto_increment_offset   = 1
slave_parallel_threads = 12
replicate_ignore_db     = mysql
replicate_ignore_table  = MA4_Data.EOD_FileCache
log_bin                 = /var/log/mysql/mariadb-bin
log_bin_index           = /var/log/mysql/mariadb-bin.index
binlog_format           = mixed
#binlog_commit_wait_count = 12
#binlog_commit_wait_usec = 10000
#slave_compressed_protocol = 1
# not fab for performance, but safer
sync_binlog             = 1
expire_logs_days        = 10
max_binlog_size         = 100M
# slaves
relay_log               = /var/log/mysql/relay-bin
relay_log_index = /var/log/mysql/relay-bin.index
relay_log_info_file     = /var/log/mysql/relay-bin.info

이것은 시도해 볼 수 있는 또 다른 해결책이다.

stop slave; 
reset slave;
start slave 

언급URL : https://stackoverflow.com/questions/23286101/how-to-fix-multi-master-replication-error-in-mariadb

반응형