一、升级前准备
ontape -c -d /path/to/backup进行全量备份)、关键配置文件(如onconfig、sqlhosts),防止升级过程中数据丢失。onstat -k all或SELECT VERSION;命令确认当前Informix数据库版本,明确升级方向(如11.70→12.10或12.10.x→12.10.y)。二、执行升级步骤
onmode -ky命令彻底停止当前Informix实例,确保数据一致性。rpm -Uvh informix-package.rpm(RHEL/CentOS)或dpkg -i informix-package.deb(Ubuntu/Debian),自动处理依赖关系。tar -xzvf informix.tar.gz -C /opt/informix),覆盖旧版本文件(需保留$INFORMIXDIR环境变量指向正确路径)。cp $INFORMIXDIR/etc/onconfig $INFORMIXDIR/etc/onconfig.old、cp $INFORMIXDIR/etc/sqlhosts $INFORMIXDIR/etc/sqlhosts.old),根据新版本要求修改配置(如调整BUFFERPOOL大小、新增EXTENDSIZE参数),确保兼容性。onupgrade -k命令执行升级,该工具会自动处理数据库模式、数据类型转换等操作。oninit -i命令初始化升级,主要用于修复bug或优化性能,不影响数据结构。informix start启动数据库服务,通过onstat -k all命令检查版本信息(确认显示为目标版本),通过dbaccess sysadmin验证数据库连接和基本功能。三、升级后任务
UPDATE STATISTICS HIGH;命令更新数据库统计信息,帮助优化器生成更优的执行计划,提升查询性能。onstat -d(检查表空间)、onstat -g ses(监控会话)、onstat -g cpu(监控CPU使用率)等命令观察系统性能,若出现性能下降,需重建索引或调整缓冲区参数。四、常见问题及解决
ontape -r恢复数据,替换为新版本前的二进制文件),确保数据安全。onconfig模板(位于$INFORMIXDIR/etc),手动合并必要的配置项(如新增的LOGARCHMETH1参数用于归档日志),避免遗漏关键设置。export DB_LOCALE=en_US.utf8、export CLIENT_LOCALE=en_US.utf8),确保数据库与客户端字符集一致。