我是 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 實用程式。但沒有運氣。同樣的錯誤。很多未知事件。
作業系統版本: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
.
二進制日誌是使用不同版本的mysql
伺服器建立的。當您從遠端伺服器或 Docker 容器內複製二進位檔案時,通常會發生這種情況。使您的mysqlbinlong
實用程式版本與mysql
伺服器版本相同。