canal同步mysql到kafka_使用Canal同步MySQL数据到Kafka 得到的数据中sql字段无值-问答-阿里云开发者社区-阿里云...
這個(gè)應(yīng)該跟你的binlog記錄模式有關(guān)系,binlog有3中模式,ROW(行模式), Statement(語句模式), Mixed(混合模式)三種模式的用法如下: ROW(行模式):記錄那條數(shù)據(jù)修改了,注意:記錄的是這條記錄的全部數(shù)據(jù),即使只更新了一個(gè)字段,binlog里也會記錄所有字段的數(shù)據(jù) 優(yōu)點(diǎn):他不記錄sql語句的上下文信息,日志內(nèi)容會非常清楚的記錄每條數(shù)據(jù)詳細(xì)的變更細(xì)節(jié),即使只更新了一個(gè)字段,binlog里也會記錄所有字段的數(shù)據(jù)。 缺點(diǎn):binlog日志會非常大,mysql主從同步時(shí),會產(chǎn)生大量磁盤IO
Statement(語句模式): 每一條會修改數(shù)據(jù)的sql都會記錄在binlog中。 優(yōu)點(diǎn):不需要記錄每一行的變化,減少了binlog日志量,節(jié)約了IO,提高性能。 缺點(diǎn):由于記錄的只是執(zhí)行語句,為了這些語句能在slave上正確運(yùn)行,因此還必須記錄每條語句在執(zhí)行的時(shí)候的一些相關(guān)信息,以保證所有語句能在slave得到和在master端執(zhí)行時(shí)候相同 的結(jié)果。另外mysql 的復(fù)制,像一些特定函數(shù)功能,slave可與master上要保持一致會有很多相關(guān)問題。
Mixed(混合模式):在Mixed模式下,一般的語句修改使用statment格式保存binlog,如一些函數(shù),statement無法完成主從復(fù)制的操作,則采用row格式保存binlog,MySQL會根據(jù)執(zhí)行的每一條具體的sql語句來區(qū)分對待記錄的日志形式,也就是在Statement和Row之間選擇一種。
你有可能模式選的ROW,導(dǎo)致只有數(shù)據(jù)變化,沒有sql語句
總結(jié)
以上是生活随笔為你收集整理的canal同步mysql到kafka_使用Canal同步MySQL数据到Kafka 得到的数据中sql字段无值-问答-阿里云开发者社区-阿里云...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 上海欢乐谷行李箱寄存多少钱
- 下一篇: macan多少钱啊?