mysql binlog 오류 "오류: Log_event::read_log_event()의 오류: '바이너리 로그에서 잘못된 이벤트를 찾았습니다.', data_len: 341, event_type: 2 **"

mysql binlog 오류 "오류: Log_event::read_log_event()의 오류: '바이너리 로그에서 잘못된 이벤트를 찾았습니다.', data_len: 341, event_type: 2 **"

저는 mysql 바이너리 로그 및 복제에 익숙하지 않습니다. 이 문제를 정렬하는 데 도움을 주십시오.

mysql 버전 5.0.95를 사용하고 있는데 이제 binlog에 오류가 발생했습니다. 바이너리 로그의 일부 쿼리가 알 수 없는 이벤트로 발생하고 mysqlbinlog 유틸리티를 사용하여 바이너리 로그를 강제로 읽으려고 하면 오류가 발생합니다.

mysqlbinlog techgv3_mysql-bin.000001  > /dev/null

명령 출력

ERROR: Error in Log_event::read_log_event(): 'Found invalid event in binary log', data_len: 341, event_type: 2
Could not read entry at offset 126:Error in log format or read error

나는 다른 버전으로 mysqlbinlog 유틸리티를 테스트했습니다. 하지만 행운은 없습니다. 같은 오류. 알려지지 않은 사건이 많습니다.

OS 버전 : CentOS 릴리스 6.4(최종) 64비트

명령 출력

mysqlbinlog -f techgv3_mysql-bin.000001
#131212 17:21:42 server id 100  end_log_pos 112256 
# Unknown event
# at 112256
#131212 17:21:42 server id 100  end_log_pos 112284         Intvar
SET INSERT_ID=13826501/*!*/;
# at 112284
#131212 17:21:42 server id 100  end_log_pos 112636 
# Unknown event
# at 112636
#131212 17:21:42 server id 100  end_log_pos 112664         Intvar
SET INSERT_ID=13826502/*!*/;
# at 112664
#131212 17:21:42 server id 100  end_log_pos 113873 
# Unknown event
# at 113873
#131212 17:21:43 server id 100  end_log_pos 113901         Intvar
SET INSERT_ID=13826503/*!*/;
# at 113901
#131212 17:21:43 server id 100  end_log_pos 114256 
# Unknown event
# at 114256
#131212 17:21:43 server id 100  end_log_pos 114443 
# Unknown event
# at 114443
#131212 17:21:43 server id 100  end_log_pos 114471         Intvar
SET INSERT_ID=13826504/*!*/;
# at 114471
#131212 17:21:43 server id 100  end_log_pos 114818 
# Unknown event
# at 114818
#131212 17:21:43 server id 100  end_log_pos 114846         Intvar
SET INSERT_ID=13826505/*!*/;
# at 114846
#131212 17:21:43 server id 100  end_log_pos 115404 
# Unknown event
# at 115404

또한 로컬 시스템에 동일한 mysql 버전 5.0.95를 생성하고 서버의 일반 로그에서 모든 mysql 쿼리를 실행합니다. 바이너리 로그에서 오류를 찾을 수 없습니까?

이 문제를 해결하는 방법을 알고 계십니까?

답변1

저도 같은 문제가 있었는데 해결 방법은 간단합니다. .mysql-client

binlog는 다른 버전의 서버를 사용하여 생성되었습니다 mysql. 이는 일반적으로 원격 서버 또는 Docker 컨테이너 내부에서 바이너리를 복사할 때 발생합니다. mysqlbinlong유틸리티 버전을 서버 버전이 아닌 동일하게 만드십시오 mysql.

관련 정보