Oceanbase从4.2.1.10升级为4.2.5.1,使用OMS 4.2.7无法正常获取增量更新

【 使用环境 】测试环境
【 OB or 其他组件 】OMS 4.2.7
【 使用版本 】OMS 4.2.7
【问题描述】
1、Oceanbase从4.2.1.10升级为4.2.5.1后,OMS同时也升级为4.2.7,重新创建迁移任务,界面出现以下异常:

2、查找日志libobcdc.log:
libobcdc_20241223.log.tar.gz (173.8 KB)

3、store的lib64下版本确认:

4、确认日志有没断档

5、从4.2.3升级为4.2.5的oceanbase,OMS同步正常。

【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

1 个赞

根据您提供的信息和上传的日志文件,我将尝试帮助您解决 OMS 4.2.7 在 OceanBase 从 4.2.1.10 升级到 4.2.5.1 后无法正常获取增量更新的问题。

问题分析

  1. 异常信息

    • 您提到在 OMS 界面中出现了 SOURCE_CRAWLER_START_FAILED 错误,具体为“启动增量日志抓取失败”。
  2. 日志分析

    • 日志文件 libobcdc.log 中可能包含更多详细的错误信息。建议重点查看该日志文件中的错误堆栈或警告信息,特别是与增量日志抓取相关的部分。
  3. 版本确认

    • 您已经确认了 store/lib64 下的库文件版本,特别是 libobcdc.so.4.2.5.1libmariadb.so.3 的存在和版本匹配。
  4. 日志断档检查

    • 您提到已经确认日志没有断档,这表明数据流是连续的,排除了日志不连续导致的问题。

可能的原因及解决方案

1. 版本兼容性问题

  • 原因:OMS 4.2.7 和 OceanBase 4.2.5.1 之间的版本可能存在兼容性问题,尤其是增量日志抓取模块。
  • 解决方案
    • 确认 OMS 4.2.7 是否支持 OceanBase 4.2.5.1 的增量日志格式。可以参考 OMS 和 OceanBase 的官方文档,确保两者之间的版本兼容性。
    • 如果有可用的补丁或更新,请尝试升级 OMS 到最新版本,以确保兼容性。

2. 配置问题

  • 原因:迁移任务的配置可能存在问题,特别是在升级后,某些配置项可能需要调整。
  • 解决方案
    • 检查 OMS 中的迁移任务配置,确保所有参数(如连接字符串、用户名、密码等)正确无误。
    • 尝试重新创建迁移任务,并仔细核对配置项。

3. 日志抓取模块问题

  • 原因:增量日志抓取模块可能出现问题,导致无法正常启动。
  • 解决方案
    • 查看 libobcdc.log 中是否有具体的错误信息,例如缺少依赖库或权限问题。
    • 确保 libobcdc.so.4.2.5.1 和其他相关库文件的权限设置正确,且路径可访问。

4. 数据库状态问题

  • 原因:OceanBase 数据库的状态可能影响增量日志的抓取。
  • 解决方案
    • 检查 OceanBase 数据库的状态,确保其处于正常运行状态,没有未完成的合并或异常情况。
    • 使用 obdiag 工具收集诊断信息,进一步排查数据库状态。

具体操作步骤

  1. 检查 OMS 和 OceanBase 的版本兼容性

  2. 重新创建迁移任务

    • 在 OMS 中删除现有的迁移任务,然后重新创建一个新的迁移任务,确保所有配置项正确无误。
  3. 查看详细日志

    • 打开 libobcdc.log 文件,查找具体的错误信息。重点关注类似以下内容:
      [ERROR] [xxxxx] Failed to start incremental log crawler: xxxxx
      
    • 根据日志中的错误提示进行相应的处理。
  4. 使用 obdiag 收集诊断信息

    • 使用 obdiag 工具收集诊断信息,以便更深入地分析问题。命令如下:
      obdiag collect --all
      
  5. 联系技术支持

    • 如果以上步骤仍无法解决问题,建议联系 OceanBase 的技术支持团队,提供详细的日志和诊断信息,以便获得进一步的帮助。

希望以上建议能够帮助您解决问题。如果有更多问题或需要进一步的帮助,请随时联系 OceanBase 的技术支持团队。

详情请参考:

  1. 4500 ~ 4999
  2. 4000 ~ 4499
  3. 0001 ~ 3999
  4. 9000 ~ 9499
1 个赞

OceanBase 社区已接收您的帖子,正在跟进中。

1 个赞

mark

查看组件监控-找到store组件-更新
drc_frame.dbversion 这个参数修改成当前ob的版本号

3 个赞

store建号之后这个drc_frame.dbversion值就不会变了,ob如果升级了,这里是不会感知到的,需要手动改一下或者直接新建一个store也是可以的

真的很棒 ++1