OceanBase单机版安装完成无法启动

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
oceanbase-3.2.4.1-101000052023010822.el7.x86_64.rpm
【问题描述】清晰明确描述问题
observer已启动
bash-4.2# ps aux | grep observer
admin 8172 5.3 15.4 4193844 2519784 ? Ssl 15:53 0:24 /home/admin/oceanbase/bin/observer -i ens192 -P 2882 -p 2881 -z zone1 -d /home/admin/oceanbase/store/obdemo -r 192.168.4.197:2882:2881 -c 10001 -n obdemo -o __min_full_resource_pool_memory=268435456,system_memory=1G,datafile_size=10G,config_additional_dir=/data/1/obdemo/etc3;/data/log1/obdemo/etc2
root 9051 0.0 0.0 112724 968 pts/0 S+ 16:00 0:00 grep observer

但是执行obclient连接observer失败,在admin和root下都试过
bash-4.2# obclient -h127.0.0.1 -uroot -P2881 -p
Enter password:
ERROR 2002 (HY000): Can’t connect to OceanBase server on ‘127.0.0.1’ (115)
bash-4.2# obclient -h192.168.4.197 -uroot -P2881 -p******
ERROR 2002 (HY000): Can’t connect to OceanBase server on ‘192.168.4.197’ (115)

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

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

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

推荐使用 obdiag 工具进行日志采集,并且将采集到的日志提供给我们以便确认问题所在。

日志采集场景: 集群无法连接
日志采集命令: obdiag gather scene run --scene=observer.cluster_down

为了更准确地定位问题,请您提供以下信息:

  1. 您是否已经检查了 OceanBase 服务是否正在运行?
  2. 您尝试连接时使用的 IP 地址和端口号是什么?
  3. 您是否有防火墙或安全组规则阻止了连接?
  4. 您是否可以提供完整的错误消息,包括任何可能的附加信息?
  5. 您是否尝试过使用其他客户端工具(如 MySQL 客户端)连接到 OceanBase?
  6. 您是否在安装过程中遇到了任何异常或错误提示?

请您按照上述命令采集日志,并将日志文件提供给我们,以便进一步分析问题。感谢您的配合!

附上敏捷诊断工具 obdiag 使用帮助链接

你好,你提的这个技术问题牵涉到OceanBase企业版范围内的功能细节;针对此类问题,建议你通过以下方式寻求帮助:

  1. 如你所在的企业客户已签署OceanBase企业版销售合同,请你联系客户经理;

  2. 如你所在的企业客户尚未签署OceanBase企业版销售合同,你可通过OceanBase官网商务咨询页面留下你的联系方式,OceanBase企业版的业务顾问会在一个工作日内与你联系。

另外,我们欢迎你使用社区版,并在论坛/社群中分享你对社区版本的想法、经验和问题,与其他社区成员共同交流。

目前确实看不出什么问题导致,推荐根据小助手提供的方法使用obdiag进行一波协助排查

-bash-4.2# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 6709/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 7082/master
tcp6 0 0 :::22 :::* LISTEN 6709/sshd
tcp6 0 0 ::1:25 :::* LISTEN 7082/master
发现2881 2882没有被监听,应该是启动有问题,启动命令中的-z zone1 -c 10001 -n obdemo这些参数是吵的官网的,是这里有问题吗,不知道该怎么填

根据您提供的信息,看起来 observer 服务确实没有正确启动,因为 2881 和 2882 端口没有被监听。这可能是由于启动命令中的某些参数配置不正确导致的。让我们来检查一下启动命令中的参数:

启动命令

/home/admin/oceanbase/bin/observer -i ens192 -P 2882 -p 2881 -z zone1 -d /home/admin/oceanbase/store/obdemo -r 192.168.4.197:2882:2881 -c 10001 -n obdemo -o __min_full_resource_pool_memory=268435456,system_memory=1G,datafile_size=10G,config_additional_dir=/data/1/obdemo/etc3;/data/log1/obdemo/etc2

参数解释

  • -i ens192: 指定网络接口。
  • -P 2882: 指定 RPC 端口。
  • -p 2881: 指定 SQL 端口。
  • -z zone1: 指定 Zone 名称。
  • -d /home/admin/oceanbase/store/obdemo: 指定数据存储目录。
  • -r 192.168.4.197:2882:2881: 指定根服务地址。
  • -c 10001: 指定集群 ID。
  • -n obdemo: 指定集群名称。
  • -o __min_full_resource_pool_memory=268435456,system_memory=1G,datafile_size=10G,config_additional_dir=/data/1/obdemo/etc3;/data/log1/obdemo/etc2: 指定其他配置选项。

检查和调整

  1. 网络接口:确保 ens192 是正确的网络接口名称。您可以使用 ifconfigip a 命令来确认。
  2. 端口冲突:确保 2881 和 2882 端口没有被其他服务占用。
  3. 根服务地址:确保 192.168.4.197:2882:2881 是正确的根服务地址。
  4. 集群 ID 和名称:确保 -c 10001-n obdemo 是正确的集群 ID 和名称。
  5. 数据存储目录:确保 /home/admin/oceanbase/store/obdemo 目录存在并且有写权限。
  6. 其他配置选项:确保 -o 参数中的配置项是正确的。

建议步骤

  1. 检查网络接口

    ifconfig
    

    ip a
    
  2. 检查端口占用

    netstat -ntlp | grep 2881
    netstat -ntlp | grep 2882
    
  3. 检查根服务地址
    确保 192.168.4.197 是正确的 IP 地址,并且 28822881 端口是正确的。

  4. 检查数据存储目录

    ls -ld /home/admin/oceanbase/store/obdemo
    
  5. 重新启动 observer
    如果以上检查都没有问题,可以尝试重新启动 observer

    pkill -f observer
    /home/admin/oceanbase/bin/observer -i ens192 -P 2882 -p 2881 -z zone1 -d /home/admin/oceanbase/store/obdemo -r 192.168.4.197:2882:2881 -c 10001 -n obdemo -o __min_full_resource_pool_memory=268435456,system_memory=1G,datafile_size=10G,config_additional_dir=/data/1/obdemo/etc3;/data/log1/obdemo/etc2
    
  6. 查看日志
    查看 observer 的日志文件,通常位于 /home/admin/oceanbase/log 目录下,以获取更多详细的错误信息。

如果您仍然无法解决问题,请提供更多的日志信息,以便我们进一步分析。

详情请参考:

  1. local_ip
  2. 在集群初始化前添加节点
  3. GV$OB_SESS_TIME_MODEL
  4. V$OB_SESS_TIME_MODEL

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

可提供一份完整的yaml文件么在~/.obd/xxx/,或者把该集群铲掉使用obd web网页白屏化方法部署集群