DBAtlas · 데이터베이스 운영 아틀라스

1236: Got fatal error 1236 from master when reading data from binary log (binary log 읽기 중 master로부터 치명적 오류 1236 수신)

MySQL

의미

replica(slave) 서버가 source(master)의 binary log에서 데이터를 읽는 중 치명적 오류를 받아 복제가 중지되었다. replica가 source의 binlog에서 예상하는 위치를 찾을 수 없다.

원인

source에서 필요한 binary log 파일이 삭제되었거나(binlog_expire_logs_seconds — 8.0 이전에는 expire_logs_days, 8.4에서 제거 — 또는 PURGE BINARY LOGS), GTID 갭/불일치, source 크래시 후 손상된 binlog 위치, 또는 replica가 너무 뒤처져 더 이상 존재하지 않는 로그를 요청하는 경우다. 'Could not find first log file name in binary log index file'이 전형적인 하위 메시지다.

해결 방법

복제 상태 확인: SHOW REPLICA STATUS\G (8.0.22+; 이전 버전에서는 SHOW SLAVE STATUS, 이전 구문은 8.4에서 제거됨). source에 있는 binlog 목록 확인: SHOW BINARY LOGS; 누락된 로그가 purge되었다면 새 백업/GTID 위치에서 replica를 재구축해야 한다(mysqldump --source-data — 8.0.26 이전에는 --master-data, 8.0.26+에서는 deprecated 별칭 — 또는 CLONE plugin). 워크로드에 맞게 source의 binlog 보존 기간을 늘리고, GTID를 사용한다면 GTID 갭을 확인한다.

DBAtlas에서 열기 →

같은 데이터베이스의 다른 항목