开发者社区 问答 正文

CanalEntry.EntryType.getTransactionId 这个事务编号跟数据库的I

我有一张日志表记录用户操作时事务的编号集合,通过

SELECT TRX_ID FROM INFORMATION_SCHEMA.INNODB_TRX WHERE TRX_MYSQL_THREAD_ID = CONNECTION_ID();

获取事务编号; 然后我后面根据canal的CanalEntry.EntryType.getTransactionId获取事务编号,发现两次的事务编号不一致,我原本是想,通过这个事务编号跟我之前的日志表关联。 所以,有个疑问,canal或是binlog的这个事务编号跟INFORMATION_SCHEMA.INNODB_TRX的事务编号是否一致,如果不一致,有什么建议可以解决我目前的问题。

原提问者GitHub用户jianchengwang

展开
收起
Java工程师 2023-05-03 16:17:33 90 分享 版权
1 条回答
写回答
取消 提交回答
  • getTransactionId是binlog里记录的事务id,至于是否是INFORMATION_SCHEMA里的trx_id还真不清楚,需要翻一下mysql源码了

    原回答者GitHub用户agapple

    2023-05-04 17:59:13
    赞同 展开评论