【 使用环境 】生产环境
【 OB or 其他组件 】OMS 4.2.7
【 使用版本 】4.2.7
【问题描述】OMS,store组件数据拉起失败
【复现路径】问题出现前后相关操作
1、OMS 组件store,无法正常拉取
2、相关日志如下:
libobcdc_store7107.log (3.1 MB)
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
1 个赞
论坛小助手
#3
根据您提供的信息,OMS 组件 store 在生产环境中遇到了数据拉取失败的问题。为了更好地帮助您解决问题,请参考以下步骤进行排查和处理:
-
检查日志文件:
- 您已经提供了部分日志文件
libobcdc_store7107.log
,但其中没有明显的错误信息。建议您继续查看日志文件中是否有更详细的错误提示或异常信息。特别是关注日志中的警告(WARN)和错误(ERROR)级别的记录。
-
确认组件状态:
- 根据您提供的图片,
Store
组件的最早拉取位点和当前拉取位点均为 1970-01-01 08:00:00
,这表明组件可能从未成功拉取过数据。请确保 Store
组件配置正确,并且能够正常连接到源端数据库。
- 同时,
Incr-Sync
组件显示有较大的延迟时间(55年),这显然是不正常的。请检查 Incr-Sync
组件的配置和网络连接情况,确保其能够正常工作。
-
验证网络连接:
- 确认
Store
和 Incr-Sync
组件与源端和目标端之间的网络连接是否正常。可以尝试使用 ping
或 telnet
命令测试网络连通性。
- 检查防火墙设置,确保没有阻止必要的端口通信。
-
检查 OMS 配置:
-
重启组件:
- 尝试重启
Store
和 Incr-Sync
组件,观察是否能恢复正常工作。有时简单的重启可以解决一些临时性的问题。
-
收集更多信息:
-
联系技术支持:
- 如果经过上述步骤仍然无法解决问题,建议您联系 OceanBase 的官方技术支持团队获取进一步的帮助。提供详细的日志文件和配置信息将有助于更快地定位问题。
希望以上建议能帮助您解决问题。如果需要更多帮助,请随时告知。
检索到的文档如下:
- 通过 OMS 进行数据迁移和同步
- 遇到问题如何向技术支持同学提问
- 0001 ~ 3999
- 4500 ~ 4999
1 个赞
淇铭
#5
clog被清理了报错是errcode=-4016 所以拉取不到clog日志
论坛小助手
#7
感谢您的补充信息。既然您提到当前已经是最新时间点,但仍然遇到 OMS 组件 Store
数据拉取失败的问题,我们可以进一步深入排查。以下是更详细的建议和步骤:
1. 检查日志中的错误信息
尽管您提到日志中没有明显的错误信息,但仍需仔细检查日志文件 libobcdc_store7107.log
中是否有任何警告(WARN)或错误(ERROR)级别的记录。特别是关注以下几点:
- 是否有连接超时、认证失败等网络或权限相关的问题。
- 是否有数据格式不匹配或解析错误的提示。
2. 确认组件状态和配置
根据您提供的图片和日志,Store
组件的状态显示为:
- 最早拉取位点:
1970-01-01 08:00:00
- 当前拉取位点:
1970-01-01 08:00:00
这表明 Store
组件从未成功拉取过数据。请确保以下配置项正确无误:
-
集群名称 (
cluster_db_name
) 和 集群 URL (cluster_url
) 是否正确。
-
用户名 (
cluster_user
) 和 密码 是否正确,并且该用户具有足够的权限。
-
实例索引 (
instance_index
) 和 实例数量 (instance_num
) 是否与实际环境匹配。
3. 验证源端和目标端的时间同步
由于 Store
组件的拉取位点是基于时间戳的,确保源端和目标端的时间同步非常重要。可以使用以下命令检查系统时间:
date
如果时间不同步,可能会导致数据拉取失败。您可以使用 NTP 或其他时间同步工具来确保两端的时间一致。
4. 检查增量同步组件的状态
Incr-Sync
组件显示有较大的延迟时间(55年),这显然是不正常的。请检查 Incr-Sync
组件的日志文件,确保其能够正常工作。具体操作如下:
- 查看
Incr-Sync
组件的日志文件,寻找任何异常信息。
- 确认
Incr-Sync
组件的配置是否正确,特别是关于数据源和目标端的配置。
5. 检查 OMS 版本兼容性
您提到使用的 OMS 版本为 4.2.7,请确保该版本与您的 OceanBase 数据库版本兼容。参考 OceanBase 迁移服务 (OMS) 文档,确认是否有已知的版本兼容性问题或补丁更新。
6. 重启并监控组件
尝试重启 Store
和 Incr-Sync
组件,并在重启后密切监控其状态。可以通过 OMS 的管理界面或命令行工具查看组件的运行状态和日志输出。
7. 使用 obdiag 收集诊断信息
如果问题仍然存在,建议使用 obdiag
工具收集更多的诊断信息。具体操作可以参考链接:OceanBase 敏捷诊断工具 obdiag。收集的信息包括但不限于:
8. 联系技术支持
如果经过上述步骤仍然无法解决问题,建议您联系 OceanBase 的官方技术支持团队获取进一步的帮助。提供详细的日志文件和配置信息将有助于更快地定位问题。
9. 检查数据库表结构和数据
有时,Store
组件无法拉取数据可能是由于源端数据库表结构或数据存在问题。请检查源端数据库的表结构和数据完整性,确保没有损坏或不一致的情况。
10. 验证网络和防火墙设置
再次确认 Store
和 Incr-Sync
组件与源端和目标端之间的网络连接是否正常。可以尝试使用 ping
或 telnet
命令测试网络连通性。同时,检查防火墙设置,确保没有阻止必要的端口通信。
总结
根据您提供的信息,Store
组件的数据拉取失败可能由多种因素引起,包括配置错误、网络问题、时间不同步等。建议您按照上述步骤逐一排查,以确定具体原因并采取相应的解决措施。如果需要更多帮助,请随时告知。
希望以上建议能帮助您解决问题。
具体信息可参考以下文档:
- GET_STATS_HISTORY_AVAILABILITY
- mysql.time_zone
- OceanBase 术语
- mysql.time_zone_transition
- oceanbase.CDB_OB_LS
- time_zone
- timestamp
- 获取所有资源规格信息
- 查询指定的资源规格信息
- 管理历史统计信息
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
是的,好奇怪,我升级为 4.2.5.bp2,恢复了。
oceanbase,从4.2.5.bp1 升级为4.2.5.bp2,中午重启都不好使。
淇铭
#11
你在持续观察观察 按正常的流程不会呀 我也反馈一下 看看是否问题
老师,归档日志在,理论上是不是“2025-02-10 17:38:26.451286”这个时间点之后都能获取呢?
淇铭
#13
正常情况下 是可以的 排查一下刚才的问题 通过 配置文件obcdc.conf 或日志grep meta_data_refresh_mode libobcdc.log*