-
现象
ulimit -a ... stack size (kbytes, -s) 1024 ...
此时,使用 admin 用户通过
ulimit -s
命令修改栈大小,操作系统报错:cannot modify limit: Operation not permitted
。 -
原因
admin 用户 ulimit 配置未生效的原因可能是操作系统关闭了 PAM。 PAM 可用来限制登录用户的 ulimit 配置,如果不开启 PAM,则会使用 SSHD 的默认值(即 1024)。
-
解决办法
-
修改 SSHD 配置文件
sshd_config
,取消对UsePAM yes
的注释。sudo vim /etc/ssh/sshd_config UsePAM yes
-
重启 SSHD 服务。
sudo systemctl restart sshd
-
再次修改
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
-
使用命令
ulimit -a
重新登录检查实际值。
-
-
现象
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,提示找不到共享库。
[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/