Skip to content

Latest commit

 

History

History
132 lines (90 loc) · 3.43 KB

File metadata and controls

132 lines (90 loc) · 3.43 KB

2.12 常见问题

机器环境初始化问题

ulimit 设置不生效

  • 现象

    ulimit -a
    ...
    stack size              (kbytes, -s) 1024
    ...

    此时,使用 admin 用户通过 ulimit -s 命令修改栈大小,操作系统报错:cannot modify limit: Operation not permitted

  • 原因

    admin 用户 ulimit 配置未生效的原因可能是操作系统关闭了 PAM。 PAM 可用来限制登录用户的 ulimit 配置,如果不开启 PAM,则会使用 SSHD 的默认值(即 1024)。

  • 解决办法

    1. 修改 SSHD 配置文件 sshd_config,取消对 UsePAM yes 的注释。

      sudo vim /etc/ssh/sshd_config
      UsePAM yes
    2. 重启 SSHD 服务。

      sudo systemctl restart sshd
    3. 再次修改 ulimit.conf 文件。

      vim  /etc/security/limits.conf
      * soft nofile 655360
      * hard nofile 655360
      * soft nproc 655360
      * hard nproc 655360
      * soft core unlimited
      * hard core unlimited
      * soft stack unlimited
      * hard stack unlimited
    4. 使用命令 ulimit -a 重新登录检查实际值。

OBD 部署问题

目录非空

  • 现象

    Initializes cluster work home x
    [ERROR] fail to init zone1(172.20.249.53) data path: /data is not empty
  • 原因

    CentOS 8.0 刚初始化的文件系统里目录里会有一个默认文件夹 lost+found

  • 解决办法

    您可运行命令 sudo /bin/rm -rf /data/* /redo/* 清空刚建的文件系统目录。

其他通用报错

  • 现象

    obd 命令出错。

  • 原因

    查看 obd 命令日志。

    vim ~/.obd/log/obd + R
  • 解决办法

    根据错误描述去解决。

observer 进程启动失败

找不到共享库

  • 现象

    手动启动进程 observer,提示找不到共享库。

    [admin@obce02 ~]$ cd oceanbase-ce/
    [admin@obce02 oceanbase-ce]$ bin/observer
    bin/observer: error while loading shared libraries: libmariadb.so.3: cannot open shared object file: No such file or directory
  • 原因

    没有将 OceanBase 数据库的 LIB 加到环境变量 LD_LIBRARY_PATH 中。

    LIB 目录如下:

    [admin@obce02 ~]$ tree oceanbase-ce/
    oceanbase-ce/
    ├── admin
    ├── bin
    │   └── observer -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/bin/observer
    <....>
    ├── lib
    │   ├── libaio.so -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/lib/libaio.so
    │   ├── libaio.so.1 -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/lib/libaio.so.1
    │   ├── libaio.so.1.0.1 -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/lib/libaio.so.1.0.1
    │   ├── libmariadb.so -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/lib/libmariadb.so
    │   └── libmariadb.so.3 -> /home/admin/.obd/repository/oceanbase-ce/3.1.0/84bd2fe27f8b8243cc57d8a3f68b4c50f94aab80/lib/libmariadb.so.3
  • 解决办法

    您可将 OceanBase 数据库的 LIB 加到环境变量 LD_LIBRARY_PATH 中,也可以写到 .bash_profile 中。

    echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase-ce/lib/' >> ~/.bash_profile
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/oceanbase-ce/lib/