温馨提示×

CentOS装Informix失败怎么办

小樊
37
2026-08-30 01:55:55
栏目: 智能运维

CentOS 上安装 IBM Informix 失败 是比较常见的问题,通常与 系统环境、依赖、权限、内核参数、SELinux、用户配置 等有关。下面我按 排查思路 + 常见错误 + 解决方案 给你一个完整指南。


一、先确认基本环境(非常重要)

1️⃣ CentOS 版本

cat /etc/centos-release

推荐版本

  • CentOS 7 / 8(Informix 12.x / 14.x)
  • 不推荐 CentOS 6(已 EOL)

⚠️ 确认是 x86_64

uname -m

2️⃣ Informix 版本是否正确

常见版本:

  • Informix 12.10.FCx
  • Informix 14.10.FCx

⚠️ 32 位 Informix 不能装在 64 位系统(除非做兼容)


二、安装前必须做的准备工作(90% 失败原因)

✅ 1. 创建 Informix 用户和组

groupadd informix
useradd -g informix informix
passwd informix

✅ 2. 设置环境变量(informix 用户)

编辑 ~/.bash_profile

export INFORMIXDIR=/opt/informix
export INFORMIXSERVER=ol_informix
export PATH=$INFORMIXDIR/bin:$PATH
export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql:$LD_LIBRARY_PATH

生效:

source ~/.bash_profile

✅ 3. 安装必要依赖(非常关键)

CentOS 7

yum install -y \
  glibc \
  libgcc \
  libstdc++ \
  ncurses \
  pam \
  ksh \
  bc \
  file \
  unzip

CentOS 8 / Stream

dnf install -y \
  glibc \
  libgcc \
  libstdc++ \
  ncurses \
  pam \
  ksh \
  bc \
  file \
  unzip

⚠️ 缺少 ksh / ncurses 是常见报错原因


✅ 4. 关闭 SELinux(强烈建议)

setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

✅ 5. 关闭防火墙(测试阶段)

systemctl stop firewalld
systemctl disable firewalld

三、解压 & 安装失败常见原因

错误一:not a valid binary / cannot execute

✅ 原因:

  • 32/64 位不匹配
  • 缺少 ld-linux.so

✅ 解决:

yum install -y glibc.i686

错误二:Full Disk / Permission denied

✅ 解决方法:

chown -R informix:informix /opt/informix
chmod -R 755 /opt/informix

✅ 确保磁盘空间 > 2GB

df -h

错误三:安装卡住 / 无反应

✅ 通常是 主机名解析问题

hostname
cat /etc/hosts

✅ 必须包含:

127.0.0.1   localhost
127.0.0.1   your_hostname

四、数据库初始化失败(oninit -ivy)

错误:shared memory error

✅ 检查内核参数 /etc/sysctl.conf

kernel.shmmax = 68719476736
kernel.shmall = 4294967296

生效:

sysctl -p

错误:ROOTPATH does not exist

onconfig 中的 ROOTPATH 必须存在:

touch /opt/informix/data/rootdbs
chmod 660 /opt/informix/data/rootdbs
chown informix:informix /opt/informix/data/rootdbs

五、日志是定位失败的关键

必看日志文件

$INFORMIXDIR/tmp
$INFORMIXDIR/online.log
/var/log/messages

六、快速自检清单(照着核对)

✅ informix 用户存在
✅ INFORMIXDIR 设置正确
✅ 依赖已安装
✅ SELinux 已关闭
✅ 主机名可解析
✅ 磁盘空间充足
✅ rootdbs 存在且权限正确


七、如果你愿意,我可以直接帮你定位

你可以把 具体报错信息 发给我,例如:

  • 安装时的报错截图
  • oninit -ivy 输出
  • online.log 内容
  • 提示的 error code(如 -27125507

我可以直接告诉你 是哪一步、为什么会失败、怎么改 ✅

如果你是在做 生产环境 / 测试环境 / Docker,也可以告诉我,我可以给你一套 完整可运行方案

0