当前位置: 首页 > 知识库问答 >
问题:

Debezium MySQL(MariaDB)连接器:如何从以前的bin日志文件位置恢复

谭吉星
2023-03-14

我正在使用Debezium-connector-mysql-0.7.5-plugin for CDC连接MariaDB v10。0.32. CDC记录保存在HDFS中以供进一步处理。一切都很完美,直到发生以下情况:

  1. 已停止连接

我可以从疾控中心的记录中看到,最新处理的bin日志坐标如下:

File : mysql-bin.000008
Position: 2155

由于上述行为,我面临以下后果:

>

  • MariaDB在重启期间旋转其bin日志,当前状态如下所示

    <代码> ------------------ ---------- -------------- ------------------ | 文件|位置|Binlog_Do_DB|Binlog_Ignore_DB | ------------ ------ ---------- -------------- ------------------ | mysql-bin.000009|326 | | | ------------------ --------- - -------------- ------------------

    在这种情况下,如果我从头开始,连接器将采取以下操作的初始快照:

    1. 放置锁,然后从所有表中读取数据
    2. 一旦完成,它开始读取最新的bin日志文件,即mysql-bin。000009

    考虑到我的情况,是否有任何方法指示Debezium从mysql-bin.000008-位置2155恢复其操作并绕过初始快照。

    提前感谢你的帮助。

  • 共有2个答案

    谢和同
    2023-03-14

    就我所知,你不能重置binlog文件名和debezium的位置。

    凤修为
    2023-03-14

    您可以尝试在Connect的偏移主题中插入一条记录,代表您希望继续的位置。但我不建议在这种情况下这样做,因为在连接器离开的时间和日志旋转的时间之间,会丢失事件。因此,如果你真的拍一张新的快照,你会更安全。

     类似资料:
    • 需要debezium从bin log中的特定位置读取。有可能吗?若有,如何指明? Debezium快照模式为:initial、when_needed、Never。我们希望将快照模式保持为never,并从指定的bin日志位置开始读取。

    • 问题内容: 知道Python日志语句存储在哪里的方法是什么? 即如果我这样做: 在哪里可以找到日志文件?另外,当我打电话时: 这与记录器的行为/保存方式有某种关系吗? 问题答案: 该模块使用附加到记录器的处理程序来决定最终存储或显示消息的方式,位置或方式。您可以默认配置为也写入文件。您应该真正阅读过文档,但是如果您将要写入消息的文件的名称调用到哪里(请注意,您必须在调用其他任何文件之前先执行此操作

    • 本文向大家介绍PostgreSQL 日志文件的所在位置,包括了PostgreSQL 日志文件的所在位置的使用技巧和注意事项,需要的朋友参考一下 1、查看postgresql.conf文件的配置,看日志文件在哪 2、日志的分类 pg_log(数据库运行日志) 内容可读 默认关闭的,需要设置参数启动 pg_xlog(WAL 日志,即重做日志) 内容一般不具有可读性 强制开启 pg_clog(事务提交日

    • 问题内容: 我有一个在docker-machine上运行的weblogic容器(正在使用docker toolbox在Windows 7上运行),并希望将日志从容器自动保存到Windows机器。 我知道我可以使用命令,但是,不是每次都将日志记录到Windows计算机上,而是有更好的方法将日志从容器保存到Windows计算机上的文件夹中吗? 问题答案: 请参阅“ Docker日志记录策略 ”,其中介

    • 问题内容: 我想通过请求中的项目填充日志记录上下文,例如:。我以为我可以在中间件的处理程序中覆盖Log类型。虽然它似乎不起作用,但我不确定为什么! 您能看到为什么在同一请求中对IIUC应该没有影响吗? 问题答案: 您需要对记录程序进行请求范围的检查。每当有新的连接进入时,就为整个处理程序全局设置它,这意味着您要进行数据争用以及通常不受欢迎的行为。 对于请求范围的上下文,请求中的嵌入是完美的。您可以

    • 本文向大家介绍mysql将bin-log日志文件转为sql文件的方法,包括了mysql将bin-log日志文件转为sql文件的方法的使用技巧和注意事项,需要的朋友参考一下 查看mysqlbinlog版本 mysqlbinlog -V [--version] 查看binlog日志开启状态 show variables like '%log_bin%'; mysql打开bin-log日志后,mysql