【 使用环境 】生产环境
【 OB or 其他组件 】 obbinlog-ce
【 使用版本 】4.2.4
【问题描述】使用obd部署成功后启动报错,但是没有具体的原因
【复现路径】obd cluster start obbinlog
【附件及日志】
[2025-05-15 15:11:50.151] [INFO] start obbinlog-ce
[2025-05-15 15:11:50.151] [DEBUG] – root@192.168.10.64 execute: cat /data/obbinlog/run/obbinlog-ce-192.168.10.64-2983.pid
[2025-05-15 15:11:50.167] [DEBUG] – exited code 1, error output:
[2025-05-15 15:11:50.167] [DEBUG] cat: /data/obbinlog/run/obbinlog-ce-192.168.10.64-2983.pid: No such file or directory
[2025-05-15 15:11:50.167] [DEBUG]
[2025-05-15 15:11:50.167] [DEBUG] – root@192.168.10.64 execute: cd /data/obbinlog/lib/ && ln -sf libstdc++.so.6.0.28 libstdc++.so.6
[2025-05-15 15:11:50.222] [DEBUG] – exited code 0
[2025-05-15 15:11:50.222] [DEBUG] – root@192.168.10.64 export LD_LIBRARY_PATH=’/data/obbinlog/lib’
[2025-05-15 15:11:50.223] [DEBUG] – root@192.168.10.64 execute: cd /data/obbinlog;nohup /data/obbinlog/bin/logproxy -f /data/obbinlog/conf/conf.json > /data/obbinlog/log/out.log &
[2025-05-15 15:11:50.238] [DEBUG] – exited code 0
[2025-05-15 15:11:50.238] [DEBUG] – root@192.168.10.64 execute: ps -aux | grep ‘/data/obbinlog/bin/logproxy -f /data/obbinlog/conf/conf.json’ | grep -v grep | awk ‘{print $2}’
[2025-05-15 15:11:50.276] [DEBUG] – exited code 0
[2025-05-15 15:11:50.276] [DEBUG] – root@192.168.10.64 delete env LD_LIBRARY_PATH
[2025-05-15 15:11:50.276] [ERROR] failed to start obbinlog-ce(server1(192.168.10.64))
[2025-05-15 15:11:50.282] [INFO] [ERROR] failed to start obbinlog-ce(server1(192.168.10.64))
[2025-05-15 15:11:50.282] [INFO]
[2025-05-15 15:11:50.282] [DEBUG] - sub start ref count to 0
[2025-05-15 15:11:50.282] [DEBUG] - export start
[2025-05-15 15:11:50.282] [DEBUG] - plugin obbinlog-ce-py_script_start-4.0.1 result: False
[2025-05-15 15:11:50.286] [DEBUG] - share lock /root/.obd/lock/mirror_and_repo release, count 1
[2025-05-15 15:11:50.286] [DEBUG] - share lock /root/.obd/lock/mirror_and_repo release, count 0
[2025-05-15 15:11:50.286] [DEBUG] - unlock /root/.obd/lock/mirror_and_repo
[2025-05-15 15:11:50.286] [DEBUG] - exclusive lock /root/.obd/lock/deploy_obbinlog release, count 0
[2025-05-15 15:11:50.286] [DEBUG] - unlock /root/.obd/lock/deploy_obbinlog
[2025-05-15 15:11:50.286] [DEBUG] - share lock /root/.obd/lock/global release, count 0
[2025-05-15 15:11:50.286] [DEBUG] - unlock /root/.obd/lock/global
[@论坛小助手 ]
论坛小助手
2025 年5 月 15 日 16:22
#3
根据您提供的日志信息和问题描述,obbinlog-ce
启动失败的原因可能与以下几点有关。以下是综合分析后的解答:
1. PID 文件缺失
从日志中可以看到:
cat: /data/obbinlog/run/obbinlog-ce-192.168.10.64-2983.pid: No such file or directory
这表明 obbinlog-ce
的 PID 文件不存在,可能是由于服务未正确启动或启动后立即退出导致的。
解决办法:
检查 /data/obbinlog/run/
目录是否存在,并确保该目录具有正确的权限。如果目录不存在,请手动创建:
mkdir -p /data/obbinlog/run/
chmod 755 /data/obbinlog/run/
2. 配置文件问题
日志中提到启动命令为:
/data/obbinlog/bin/logproxy -f /data/obbinlog/conf/conf.json
如果 /data/obbinlog/conf/conf.json
配置文件内容不正确或缺失,可能导致服务无法正常启动。
解决办法:
3. 依赖库问题
日志中有一段关于软链接的命令:
ln -sf libstdc++.so.6.0.28 libstdc++.so.6
这表明 obbinlog-ce
可能依赖于特定版本的 libstdc++
库。如果系统中缺少该库或版本不匹配,可能导致启动失败。
解决办法:
4. 日志文件分析
日志中提到输出日志文件路径为 /data/obbinlog/log/out.log
,但未提供具体内容。建议查看该文件以获取更详细的错误信息。
解决办法:
5. 内存不足
根据文档片段 9 的信息,内存不足可能导致组件启动失败。虽然日志中未明确提到内存问题,但仍需确认系统是否有足够的可用内存。
解决办法:
6. 网络或权限问题
如果 obbinlog-ce
无法连接到 OceanBase 数据库,也可能导致启动失败。
解决办法:
综合建议
如果以上方法仍无法解决问题,建议提供以下信息以便进一步排查:
/data/obbinlog/log/out.log
的完整内容。
obd cluster list
的输出结果。
obd cluster config show obbinlog
的配置详情。
最后,如果问题仍未解决,可以参考文档片段 7 的建议,提供相关日志文件并联系 OceanBase 技术支持团队获取帮助。
更多信息请查看:
OceanBase 安装部署工具 V1.6.0
错误码
OceanBase 安装部署工具 V1.3.3
如何升级 obproxy 到 obproxy-ce 3.2.3
遇到问题如何向技术支持同学提问
淇铭
2025 年5 月 15 日 16:46
#7
下面的日志信息 提供一下
/data/obbinlog/log/out.log
论坛小助手
2025 年5 月 15 日 16:56
#9
根据您上传的日志文件内容,以下是针对 obbinlog-ce
启动失败问题的进一步分析和解决方案:
1. 日志分析
从日志中可以看到以下关键信息:
部署状态检查 :日志显示 Deploy status judge
和 Get deploy config
正常完成,表明部署配置文件加载成功。
SSH 连接正常 :日志中提到 Open ssh connection ok
,说明 SSH 连接没有问题。
插件加载成功 :日志中提到 plugin obbinlog-ce-py_script_workflow_start_check-4.0.1 result: True
,表明启动前的检查插件运行正常。
PID 文件缺失 :日志中提到 cat: /data/obbinlog/run/obbinlog-ce-192.168.10.64-2983.pid: No such file or directory
,这与之前的分析一致,可能是服务未正确启动或启动后立即退出。
2. 可能原因及解决办法
(1) PID 文件路径问题
日志中提到 PID 文件路径为 /data/obbinlog/run/obbinlog-ce-192.168.10.64-2983.pid
。如果该路径不存在或权限不足,可能导致服务无法正常启动。
解决办法:
(2) 依赖库问题
日志中提到软链接命令:
ln -sf libstdc++.so.6.0.28 libstdc++.so.6
这表明 obbinlog-ce
可能依赖于特定版本的 libstdc++
库。如果系统中缺少该库或版本不匹配,可能导致启动失败。
解决办法:
(3) 配置文件问题
日志中提到启动命令为:
/data/obbinlog/bin/logproxy -f /data/obbinlog/conf/conf.json
如果 /data/obbinlog/conf/conf.json
配置文件内容不正确或缺失,可能导致服务无法正常启动。
解决办法:
(4) 日志文件分析
日志中提到输出日志文件路径为 /data/obbinlog/log/out.log
,但未提供具体内容。建议查看该文件以获取更详细的错误信息。
解决办法:
(5) 内存不足
虽然日志中未明确提到内存问题,但仍需确认系统是否有足够的可用内存。
解决办法:
3. 综合建议
如果以上方法仍无法解决问题,建议提供以下信息以便进一步排查:
/data/obbinlog/log/out.log
的完整内容。
obd cluster list
的输出结果。
obd cluster config show obbinlog
的配置详情。
最后,如果问题仍未解决,可以参考文档片段 7 的建议,提供相关日志文件并联系 OceanBase 技术支持团队获取帮助。
4. 补充说明
根据日志内容,obbinlog-ce
的启动流程已经通过了大部分检查点,但在实际启动过程中出现问题。结合之前分析的 PID 文件缺失、依赖库问题和配置文件问题,建议优先从这些方面入手排查。
检索到的文档如下:
创建 MySQL 模式的用户租户
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
/data/obbinlog/log/out.log 是空的。
binlog元数据库用的是OceanBase 版本号4.3.5.1
我在使用obd安装之前先用下载安装部署过一次(sh env/deploy.sh -m deploy -f env/deploy.conf.json),后来也是报连不上,我就给删除了,然后又用obd部署
obd.2025-05-15.txt (1.1 MB)
obd.txt (466.0 KB)
这是昨天和今天的,我今天尝试了安装4.0.1版本的,也是一样的错误
辞霜
2025 年5 月 16 日 13:53
#14
提供一下这个日志/data/obbinlog/log/out.log
/data/obbinlog/log/out.log 日志是空的
辞霜
2025 年5 月 16 日 14:21
#16
麻烦提供一下obd的版本和yaml配置文件。
建议你把元数据删掉,或者更换一个新的数据库再启动试试看
[root@localhost ~]# obd --version
OceanBase Deploy: 3.2.0
REVISION: 5f4ee37b01de1063b822e7866aaf945e4089cba7
BUILD_BRANCH: HEAD
BUILD_TIME: Apr 01 2025 18:55:26OURCE
Copyright (C) 2025 OceanBase
License Apache 2.0: Apache version 2 or later https://www.apache.org/licenses/LICENSE-2.0 .
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
yml的内容如下:
#Only need to configure when remote login is required
user:
username: root
password: dbFbsf%6214ddd1
#key_file: /home/admin/.ssh/id_rsa
#port: your ssh port, default 22
#timeout: ssh connection timeout (second), default 30
obbinlog-ce:
version: 4.0.1 #4 .2.4
servers:
- name: server1
ip: 192.168.10.24
global:
home_path: /data/obbinlog
service_port: 2983 # External port. The default value is 2983.
prometheus_port: 2984 # The Prometheus port. The default value is 2984.
init_schema: true # init meta db, default true
meta_host: 192.168.10.24 # meta support ob/mysql
meta_port: 2883
meta_username: root@binglog # need tenant exist, if db is mysql, use root or other
meta_password: Ei71hg6gdshH
meta_db: binlog_database
我也试过把数据库中的表都删掉,启动的时候可以正常创建