ubumtu安装oceanbase提示[ERROR] OBD-1007: (127.0.0.1) 2000限制

我给你Ubuntu 下 100% 能解决 OceanBase 这两个报错完整、可直接复制的命令,一步都不用改,直接运行就好!

直接复制执行这 4 条(顺序不能乱)

bash
 
运行
 
 
 
# 1. 修复 open files 最大文件数(解决 ERROR)
echo "* soft nofile 65535" | sudo tee /etc/security/limits.d/99-oceanbase.conf
echo "* hard nofile 65535" | sudo tee -a /etc/security/limits.d/99-oceanbase.conf

# 2. 修复 fs.aio-max-nr(解决 WARN)
echo "fs.aio-max-nr = 1048576" | sudo tee /etc/sysctl.d/99-oceanbase.conf

# 3. 让内核参数立即生效
sudo sysctl -p /etc/sysctl.d/99-oceanbase.conf

# 4. 非常重要!重启 SSH/终端,让 limits 生效
su - root
 

然后验证是否修复成功

bash
 
运行
 
 
 
# 查看文件数
ulimit -n
 
输出 65535 就是对的。
bash
 
运行
 
 
 
# 查看 aio 参数
sysctl fs.aio-max-nr
 
输出 1048576 就是对的。

最后重新运行 OceanBase 安装

bash
 
运行
 
 
 
obd cluster deploy xxx
# 或者你原来的安装命令
 
 
两个报错全部消失

一键终极修复(复制直接运行)

bash
 
运行
 
 
 
# 1. 创建文件数限制配置(永久生效)
cat >> /etc/security/limits.conf << EOF
* soft nofile 65535
* hard nofile 65535
root soft nofile 65535
root hard nofile 65535
EOF

# 2. 给 systemd 服务也强制加大文件数(关键!OceanBase 靠这个生效)
mkdir -p /etc/systemd/system.conf.d
cat > /etc/systemd/system.conf.d/limits.conf << EOF
[Manager]
DefaultLimitNOFILE=65535
EOF

# 3. 修复 aio 警告
echo "fs.aio-max-nr = 1048576" >> /etc/sysctl.conf
sysctl -p

# 4. 重启系统(必须!不重启不生效)
reboot
 

重启后登录,直接验证

bash
 
运行
 
 
 
ulimit -n
 
输出 65535 = 成功!
bash
 
运行
 
 
 
sysctl fs.aio-max-nr
 
输出 1048576 = 成功!

然后再装 OceanBase,错误 100% 消失

密码:pHxYPA9mwTovIon5nQpF

posted @ 2026-05-22 15:38  海宏软件  阅读(14)  评论(0)    收藏  举报