1. 程式人生 > 其它 >mysql+canal啟動報錯

mysql+canal啟動報錯

技術標籤:Bug記錄大資料

1.當刪除binlog.00000x 日誌可能mysql再啟動不了,需要把binlog.index清空
在這裡插入圖片描述
2.Mysql重新安裝或者安裝高版本的時候,canal啟動報錯

2020-07-06 07:10:39.236 [destination = example , address = bigdata101/192.168.1.96:3306 ,
 EventParser] ERROR c.a.o.c.p.inbound.mysql.rds.RdsBinlogEventParserProxy - dump address bigdata101/192.168.1.96:3306 has an error, retrying. caused by 
java.io.IOException: Received error packet: errno =
1236, sqlstate = HY000 errmsg = Could not find first log file name in binary log index file

在這裡插入圖片描述
解決辦法:/opt/module/canal/conf/example/ meta.dat 刪除

Mysql8 預設開啟binlog和format=row
使用Canal需要在mysql my.conf中增添 service-id

3.Canal HA 第二臺機器報錯
在這裡插入圖片描述

1.提高允許的max_connection_errors數量(治標不治本):

① 進入Mysql資料庫檢視max_connection_errors:

show variables like '%max_connection_errors%'
;

② 修改max_connection_errors的數量為1000:

 set global max_connect_errors = 1000;

2.第二步可以在資料庫中進行,命令如下:

flush hosts;
附加:Canal HA配置

修改canal.properties檔案

canal.zkServers=192.168.207.141:2181,192.168.207.142:2181,192.168.207.143:2181

修改instance.properties檔案

canal.instance.mysql.slaveId = 1234 #兩臺不一樣

position info

canal.instance.master.address = 192.168.207.141:3306
canal.instance.dbUsername = root
canal.instance.dbPassword = 123456

canal.instance.defaultDatabaseName = canal

canal.instance.connectionCharset = UTF-8