在 Ubuntu 下使用 IBM Informix,通常分为 安装、配置、基本使用 三部分。由于 Informix 官方并未直接提供 Ubuntu 的 DEB 包,主流做法有两种:
最简单、最干净,适合学习和开发。
docker pull ibmcom/informix-developer-database
docker run -d \
--name ifx \
-p 9088:9088 \
-e LICENSE=accept \
ibmcom/informix-developer-database
进入容器:
docker exec -it ifx bash
Informix 官方只提供 RPM 包,Ubuntu 需使用 alien 转换。
sudo apt update
sudo apt install -y alien libaio1 libncurses5
从 IBM 官网下载:
sudo alien -i informix-*.rpm
sudo useradd -m informix
sudo passwd informix
编辑 ~/.bashrc 或 /home/informix/.bashrc:
export INFORMIXDIR=/opt/IBM/informix
export INFORMIXSERVER=demo_on
export ONCONFIG=onconfig.demo
export PATH=$INFORMIXDIR/bin:$PATH
export INFORMIXSQLHOSTS=$INFORMIXDIR/etc/sqlhosts
加载:
source ~/.bashrc
oninit -iv
启动成功后:
onstat -
dbaccess
CREATE DATABASE testdb WITH LOG;
CREATE TABLE userinfo (
id INTEGER PRIMARY KEY,
name VARCHAR(50),
age INTEGER
);
INSERT INTO userinfo VALUES (1, 'Tom', 25);
| 功能 | 命令 |
|---|---|
| 启动数据库 | oninit |
| 停止数据库 | onmode -ky |
| 查看状态 | onstat - |
| 进入 SQL 工具 | dbaccess |
| 查看实例 | onstat -c |
❗ 不支持官方 DEB 包
❗ 生产环境建议使用 RHEL / SUSE
✅ 开发环境推荐 Docker
docker exec -it ifx dbaccess - -
> CREATE DATABASE test;
> CREATE TABLE t1(a int);
> INSERT INTO t1 VALUES(1);
> SELECT * FROM t1;
如果你愿意,我可以帮你:
你现在是 学习 / 开发 / 生产 哪种用途?