下面给你一个实操向的 Ubuntu 上搭建 Informix 集群的说明。Informix 在 Linux(包括 Ubuntu)上支持多种集群方案,最常用的是 HDR(High Availability Data Replication),其次有 RSS(Remote Standby Server) 和 SDS(Shared Disk Secondary)。
下面以 HDR 主备集群 为例,这是最常见、最基础的 Informix 集群方式。
| 角色 | 主机名 | IP | 说明 |
|---|---|---|---|
| 主节点 | ifx-primary | 192.168.1.10 | Primary |
| 备节点 | ifx-standby | 192.168.1.11 | HDR Secondary |
Ubuntu 版本建议:20.04 / 22.04(64位)
sudo apt update
sudo apt install -y libaio1 uuid-runtime tzdata
两台机器都要做:
sudo groupadd informix
sudo useradd -g informix -m -d /home/informix informix
sudo passwd informix
从 IBM 官网下载 Informix Developer/Enterprise Edition(例如 ids-14.10.FCx)
tar -xvf ids*.tar
cd ids*
sudo ./installserver
安装目录示例:
/opt/ibm/informix
/home/informix/.bashrc
export INFORMIXDIR=/opt/ibm/informix
export INFORMIXSERVER=ifx_primary
export ONCONFIG=onconfig.primary
export PATH=$INFORMIXDIR/bin:$PATH
export LD_LIBRARY_PATH=$INFORMIXDIR/lib
备机:
export INFORMIXSERVER=ifx_standby
export ONCONFIG=onconfig.standby
mkdir -p /data/informix
chown -R informix:informix /data/informix
$INFORMIXDIR/etc/onconfig.primary
ROOTPATH /data/informix/rootdbs
DBSERVERNAME ifx_primary
LOGFILES 10
LOGSIZE 5000
DRAUTO 0
HA_ALIAS ifx_primary
$INFORMIXDIR/etc/sqlhosts
ifx_primary onsoctcp 192.168.1.10 9088
ifx_standby onsoctcp 192.168.1.11 9088
oninit -iv
从主节点复制:
scp informix@192.168.1.10:/opt/ibm/informix/etc/onconfig.primary \
/opt/ibm/informix/etc/onconfig.standby
修改:
DBSERVERNAME ifx_standby
HA_ALIAS ifx_standby
ROOTPATH /data/informix/rootdbs
mkdir -p /data/informix
chown informix:informix /data/informix
onmode -d primary ifx_standby
oninit -PHY
onmode -d secondary ifx_primary
onstat -g hdr
正常应看到:
Primary / Secondary
主节点:
dbaccess - -
create database testdb;
备节点:
onstat -d
dbaccess testdb -
select * from systables;
| 模式 | 特点 |
|---|---|
| HDR | 一主一备,同步/异步 |
| RSS | 异步,多个备机 |
| SDS | 共享存储,快速故障切换 |
9088、防火墙informix UID 要一致如果你愿意,我可以:
你现在是 学习 / 生产 / 测试 环境?