• Docker中OceanBase挂载过后,删除再启动无限重启的解决办法


    ob-compose.yml文件如下:

    version: '3'
    services:
      oceanbase1:
        image: oceanbase/oceanbase-ce:latest
        container_name: oceanbase1
        hostname: oceanbase1
        ports:
            - 2881:2881
        restart: always
        privileged: true
        volumes:
          #- //d/obdata/ob:/root/ob
          #- //d/obdata/obd:/root/.obd
          - ob:/root/ob
          - obd:/root/.obd
          - obagent:/root/obagent
    volumes:
          ob:
          obd:
          obagent:
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    这时候由于windows下/root/obagent路径需要访问linux特殊文件.pid,但windows下却是无效的,因此挂载只能使用Volumes,而不能使用Bind mount直接挂载本地路径。

    导致日志出现以下错误:

    [2023-11-02 00:29:50.699] [DEBUG] -- 127.0.0.1 program health check
    [2023-11-02 00:29:50.700] [DEBUG] -- local execute: cat /root/obagent/run/ob_agentd.pid 
    [2023-11-02 00:29:50.715] [DEBUG] -- exited code 0
    [2023-11-02 00:29:50.716] [DEBUG] -- local execute: cat /root/obagent/run/ob_mgragent.pid 
    [2023-11-02 00:29:50.726] [DEBUG] -- exited code 1, error output:
    [2023-11-02 00:29:50.726] [DEBUG] cat: /root/obagent/run/ob_mgragent.pid: No such file or directory
    [2023-11-02 00:29:50.726] [DEBUG] 
    [2023-11-02 00:29:50.727] [WARNING] failed to start 127.0.0.1 obagent
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    这可能有几个问题:
    1、运行是有上次运行的资料导致失败,解决如下:

    把/root/obagent挂载,然后rm -rf  /root/obagent/run/*就能成功重启,100%成功。
    
    • 1

    2、资源不足,通过Trace发现有可能原来分配内存,LOG磁盘空间资源不足 等,也会导致起不来,这时候看日志能看出来,但OB起不来的话,如何设置呢,可以通过以下3条命令重新设置:

    [root@oceanbase1 bin]#echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/ob/lib/' >> ~/.bash_profile
    [root@oceanbase1 bin]#source ~/.bash_profile
    [root@oceanbase1 bin]# ./observer  -o  log_disk_size =18G
    ./observer -o log_disk_size =18G
    optstr: log_disk_size
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    Linux项目自动化构建工具--make&Makefile
    解决Qt报错:Android deploy settings file not found, not building an APK.
    下载整个Yum源的所有安装包到本地指定目录
    [LeetCode 1373]二叉搜索子树的最大键值和
    公众号突破公司注册数量限制
    【TypeScript教程】06—了解包括浮点数和大整数在内的数字类型
    JS 【数组方法】数组去重
    QT使用时,报错说No suitable kits can be found
    不同对话分支的生成展示
    CH59x 系统16位PWM使用
  • 原文地址:https://blog.csdn.net/winnyrain/article/details/134174079