Debian Informix如何配置存储引擎
导读:Debian 上配置 Informix 存储引擎的正确思路 在 Informix 中,并不存在像 MySQL 那样可插拔的“存储引擎”概念。通常所说的“配置存储引擎”,在 Informix 场景下对应的是:规划与创建 dbspaces(数据...
Debian 上配置 Informix 存储引擎的正确思路
在 Informix 中,并不存在像 MySQL 那样可插拔的“存储引擎”概念。通常所说的“配置存储引擎”,在 Informix 场景下对应的是:规划与创建 dbspaces(数据库空间)、配置 页/块大小、设置 日志模式(缓冲/无缓冲、归档)、以及选择 备份/恢复组件(ON-Bar 或 ontape)。在 Debian 上的操作与主流 Linux 一致,核心是正确编辑实例配置文件 onconfig 与连接配置 sqlhosts,并按需初始化空间与日志。以下给出可直接落地的步骤与要点。
一、准备与环境变量
- 创建专用用户与目录
- 创建用户与组:sudo groupadd informix;sudo useradd -u 3000 -g 3000 -d /opt/informix -m informix
- 创建目录:sudo mkdir -p /opt/informix/{ data,log,tmp,backup}
- 授权:sudo chown -R informix:informix /opt/informix
- 配置环境变量(以 informix 用户执行)
- 编辑 /home/informix/.bash_profile 或 ~/.bashrc,加入:
- export INFORMIXDIR=/opt/informix
- export INFORMIXSERVER=informix
- export ONCONFIG=onconfig.informix
- export PATH=$INFORMIXDIR/bin:$PATH
- export LD_LIBRARY_PATH=$INFORMIXDIR/lib:$LD_LIBRARY_PATH
- 使生效:source ~/.bash_profile
- 编辑 /home/informix/.bash_profile 或 ~/.bashrc,加入:
- 准备配置文件与网络端口
- 复制模板:cp $INFORMIXDIR/etc/onconfig.std $INFORMIXDIR/etc/onconfig.informix
- 在 /etc/services 增加端口(示例):informix_services 8888/tcp
- 复制并编辑 $INFORMIXDIR/etc/sqlhosts:
- informix onipcshm localhost informix_services
- informix onsoctcp localhost informix_services 以上为 Debian/Ubuntu 上通用初始化步骤,确保目录、权限与环境变量正确是后续配置存储的前提。
二、在 onconfig 中完成存储相关核心配置
- 关键参数与示例(编辑 $INFORMIXDIR/etc/onconfig.informix)
- 根空间与路径
- ROOTNAME rootdbs
- ROOTPATH /opt/informix/data/rootdbs
- ROOTSIZE 30000(页,见下节页大小换算)
- 页/块大小(一经创建不可更改,需提前规划)
- DBSPACETEMP 指定临时 dbspace(如 tempdbs)
- 页大小在创建 dbspace 时通过 CREATE DBSPACE … PAGESIZE 指定(单位 KB)
- 日志与镜像
- LOGFILES 1
- LOGSIZE 10000(KB)
- MIRROR 0/1(是否镜像逻辑日志)
- 缓冲池与缓存
- BUFFERS 调整至物理内存的合理比例(如 1/8~1/4,视负载而定)
- 备份组件(二选一或并存)
- BAR_BSALIB 指向 ON-Bar 库(启用 ON-Bar)
- 或保持为空使用 ontape
- 根空间与路径
- 页大小与空间换算
- 计算公式:实际大小(页) × 页大小(KB) = 占用空间(KB)
- 示例:ROOTSIZE 30000 页
- 若 2 KB 页:约 58.6 MB
- 若 4 KB 页:约 117.2 MB
- 若 8 KB 页:约 234.4 MB 以上参数决定数据如何在磁盘上落盘、日志如何管理以及备份路径,是“存储配置”的核心。
三、初始化实例与创建存储结构
- 初始化实例(切换到 informix 用户)
- 冷启动初始化:oninit -i
- 或分步:oninit -p(仅初始化共享内存),随后 oninit
- 创建业务 dbspaces(示例)
- 创建数据空间:CREATE DBSPACE data1 IN DBSPACETEMP USING FILE ‘/opt/informix/data/data1.dbf’ 100000;
- 创建临时空间:CREATE TEMP DBSPACE tempdbs USING FILE ‘/opt/informix/data/tempdbs.dbf’ 50000;
- 创建索引空间:CREATE DBSPACE idx1 USING FILE ‘/opt/informix/data/idx1.dbf’ 50000;
- 日志与备份初始化
- 逻辑日志:onparams -a -d /opt/informix/data/logs/log1 -s 10000
- 物理日志(可选):onparams -p -s 100000 -d /opt/informix/data/physlog
- 归档(若需归档日志):配置 LTAPEDEV/STAGE_DIR 等,使用 ontape -s -L 0 执行 0 级备份初始化归档
- 验证
- onstat -d(查看 dbspaces 与 chunk)
- onstat -l(查看逻辑日志)
- onstat -m(查看消息日志是否有错误) 以上步骤完成“存储层”的落地:实例根空间、业务空间、日志与归档路径均按规划创建并可用。
四、备份与恢复组件选择与配置
- 使用 ON-Bar(企业级备份)
- 安装并配置存储管理器(如 TSM、DP 等)
- 在 onconfig 中设置 BAR_BSALIB、BAR_MAX_BACKUP、BAR_RETRY 等
- 初始化与备份:onbar -b -L 0(全备)
- 使用 ontape(内置工具)
- 零级备份:ontape -s -L 0
- 逻辑日志备份:ontape -a
- 恢复:ontape -r(按向导恢复)
- 选择建议
- 单机/测试:优先 ontape(部署简单)
- 生产/多路复用/磁带库:优先 ON-Bar 选择并配置合适的备份组件,是“存储可用性”与“恢复能力”的关键环节。
五、常见排错与优化要点
- 权限与路径
- 确保 /opt/informix 及子目录属主为 informix:informix,且目录权限为 660/750
- 检查 sqlhosts 端口与 /etc/services 一致
- 空间与页大小
- 创建 dbspace 时一次性确定 PAGESIZE,后续不可变更
- 预估增长,合理设置 ROOTSIZE/DBSPACETEMP 与数据/索引空间配比
- 日志与恢复
- 生产建议开启 逻辑日志镜像 与 定期归档
- 定期校验备份:ontape -t -L 0 或 onbar -v
- 监控与维护
- 常用命令:onstat -i/-d/-l/-m;定期查看 online.log
- 结合告警阈值(空间使用率、长事务、检查点频率)做容量规划 以上要点可显著降低配置与运行期风险,并提升可维护性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian Informix如何配置存储引擎
本文地址: https://pptw.com/jishu/754115.html
