温馨提示×

ubuntu informix为何启动失败

小樊
35
2026-10-19 21:35:55
栏目: 智能运维

在 Ubuntu 上 Informix 启动失败 的原因比较多,常见原因和排查思路如下(按出现频率排序):


一、最常见原因

1️⃣ INFORMIXDIR / INFORMIXSERVER 环境变量未设置

Informix 启动严重依赖环境变量。

检查:

echo $INFORMIXDIR
echo $INFORMIXSERVER
echo $ONCONFIG

正常应类似:

INFORMIXDIR=/opt/informix
INFORMIXSERVER=ol_informix
ONCONFIG=onconfig.ol_informix

如未设置,在 ~/.bashrc 或 /etc/profile 中加入:

export INFORMIXDIR=/opt/informix
export INFORMIXSERVER=ol_informix
export ONCONFIG=onconfig.ol_informix
export PATH=$INFORMIXDIR/bin:$PATH

2️⃣ 权限问题(非常常见)

Informix 必须以 informix 用户运行。

检查:

id informix
ps -ef | grep oninit

常见错误:

  • 用 root 启动 oninit
  • 数据目录不属于 informix

修复:

chown -R informix:informix $INFORMIXDIR

3️⃣ onconfig 文件配置错误

查看:

$INFORMIXDIR/etc/$ONCONFIG

重点检查:

ROOTPATH   /opt/informix/data/rootdbs
ROOTSIZE   100000
DBSERVERNAME ol_informix

常见错误:

  • ROOTPATH 不存在
  • 磁盘空间不足
  • 路径无写权限

4️⃣ 共享内存 / 内核参数不足(Ubuntu 特有)

Ubuntu 默认 SHM 偏小。

查看:

ipcs -l

常见问题:

  • SHMMAX 太小
  • 无法创建共享内存

临时解决:

sysctl -w kernel.shmmax=2147483648

永久:

/etc/sysctl.conf
kernel.shmmax=2147483648

5️⃣ 端口未监听 / services 配置错误

onstat - 报:

Cannot connect to server

检查:

grep ol_informix /etc/services

应存在:

ol_informix 9088/tcp

6️⃣ 日志里看真实错误(最重要)

$INFORMIXDIR/online.log

或:

oninit -vy

常见错误示例:

  • Cannot open rootdbs
  • Shared memory error
  • Segment violation

二、快速自检清单 ✅

whoami                  # 应为 informix
echo $INFORMIXDIR
onstat -
ipcs -m
ls -l $INFORMIXDIR/data
cat $INFORMIXDIR/online.log

三、如果你愿意,我可以更精确地帮你

请贴出以下信息之一:

  1. oninit -vy 的输出
  2. online.log 最后 30 行
  3. 错误信息截图或文字
  4. Informix 版本(如 12.10 / 14.10)

我可以直接告诉你具体是哪一行配置或系统参数导致启动失败。

0 踩