在 Ubuntu 上配置 IBM Informix 主要包括 安装、初始化实例、配置环境变量、创建数据库 等步骤。下面给你一个从零开始的完整流程(以 Informix 14.x / 12.x 为例),适用于 Ubuntu 20.04 / 22.04。
sudo apt update
sudo apt install -y \
libaio1 \
libnuma1 \
libpam0g \
libxml2 \
libssl-dev \
unixodbc \
build-essential
sudo groupadd informix
sudo useradd -g informix -m -s /bin/bash informix
sudo passwd informix
从 IBM 官网下载(需 IBM 账号):
示例文件:
informix-14.10.FC1DE.linux-x86_64.tar
sudo mkdir -p /opt/informix
sudo chown informix:informix /opt/informix
su - informix
cd /opt/informix
tar -xvf informix-14.10.FC1DE.linux-x86_64.tar
运行安装脚本:
./installserver
一路回车即可(Developer Edition 可免费使用)
编辑 ~/.bashrc 或 ~/.profile:
export INFORMIXDIR=/opt/informix
export INFORMIXSERVER=ol_informix
export ONCONFIG=onconfig.ol_informix
export INFORMIXSQLHOSTS=$INFORMIXDIR/etc/sqlhosts
export PATH=$INFORMIXDIR/bin:$PATH
export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$INFORMIXDIR/lib/esql:$LD_LIBRARY_PATH
生效:
source ~/.bashrc
cd $INFORMIXDIR/etc
cp onconfig.std onconfig.ol_informix
vi onconfig.ol_informix
重点修改:
ROOTPATH /opt/informix/data/rootdbs
MSGPATH /opt/informix/online.log
SERVERNUM 1
DBSERVERNAME ol_informix
创建数据目录:
mkdir -p /opt/informix/data
touch /opt/informix/data/rootdbs
chmod 660 /opt/informix/data/rootdbs
vi $INFORMIXDIR/etc/sqlhosts
添加:
ol_informix onsoctcp localhost 9088
oninit -iv
成功标志:
IBM Informix Dynamic Server Initialized
查看状态:
onstat -
dbaccess
或命令行:
dbaccess - -
CREATE DATABASE testdb WITH LOG;
sudo vi /etc/systemd/system/informix.service
[Unit]
Description=IBM Informix
After=network.target
[Service]
Type=forking
User=informix
Group=informix
EnvironmentFile=/opt/informix/ol_informix.env
ExecStart=/opt/informix/bin/oninit
ExecStop=/opt/informix/bin/onmode -ky
[Install]
WantedBy=multi-user.target
可把环境变量写入
/opt/informix/ol_informix.env
sudo systemctl daemon-reload
sudo systemctl enable informix
sudo systemctl start informix
oninit: command not foundsource ~/.bashrc
修改 sqlhosts 中的端口号(如 9088 → 9090)
chown -R informix:informix /opt/informix
onstat -
dbaccess testdb -
SELECT * FROM systables;
如果你需要:
可以直接告诉我你的使用场景,我可以给你更精确的配置方案。