在 CentOS 上连不上 Informix,一般不是“CentOS 不支持”,而是环境、配置或网络问题。下面按最常见原因 → 排查方法给你系统梳理一下。
CentOS 本身不带 Informix 客户端。
需要安装:
IBM Informix Client SDK (CSDK)Informix Innovator-C检查是否安装:
rpm -qa | grep -i informix
which dbaccess
如果没有:
INFORMIXDIRInformix 严重依赖环境变量。
必须有的:
export INFORMIXDIR=/opt/IBM/informix
export PATH=$INFORMIXDIR/bin:$PATH
export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql
可以通过:
echo $INFORMIXDIR
确认是否生效。
Informix 靠 /etc/sqlhosts 或 $INFORMIXDIR/etc/sqlhosts 找服务器。
示例:
infserver onsoctcp 192.168.1.10 9088
常见错误:
检查:
cat $INFORMIXDIR/etc/sqlhosts
CentOS 默认有 firewalld,Informix 端口常被挡。
测试:
telnet 192.168.1.10 9088
# 或
nc -vz 192.168.1.10 9088
如果连不上:
systemctl stop firewalld
firewall-cmd --add-port=9088/tcp --permanent
firewall-cmd --reload
SELinux 经常拦 Informix。
临时关闭测试:
setenforce 0
如果这样能连:
Informix 连接:
informix)检查:
id
groups
在 Informix 服务端 检查:
onstat -
onstat -g ntt
确认:
| 检查项 | 命令 |
|---|---|
| 客户端是否安装 | which dbaccess |
| 环境变量 | echo $INFORMIXDIR |
| sqlhosts | cat $INFORMIXDIR/etc/sqlhosts |
| 网络 | nc -vz IP PORT |
| 防火墙 | systemctl status firewalld |
| SELinux | getenforce |
dbaccess / isql / JDBC / ODBC?我可以一步一步带你连上。