在 CentOS 上 Informix 占用资源(CPU / 内存 / IO)过高,通常不是“Informix 本身的问题”,而是配置、SQL、负载或系统环境导致的。下面按最常见原因 → 排查方法 → 解决建议来说明。
典型表现
常见原因
✅ 排查:
onstat -g ses
onstat -g sql
onstat -g act
✅ 解决:
SET EXPLAIN ON 看执行计划典型表现
关键参数
BUFFERSSHMVIRTSIZESHMTOTALLOCKS✅ 查看:
onstat -g mem
onstat -p
✅ 建议:
典型表现
✅ 查看:
onstat -g ntu
onstat -g ses | wc -l
✅ 解决:
典型表现
✅ 排查:
iostat -x 1
sar -d 1
✅ 常见原因:
✅ 建议:
典型表现
✅ 查看:
onstat -g con
onstat -g lck
onstat -g sql
✅ 解决:
✅ 建议:
# 关闭 THP
echo never > /sys/kernel/mm/transparent_hugepage/enabled
# 检查 swap
free -m
top
iostat -x 1
free -m
onstat -
onstat -g ses
onstat -g sql
找最耗资源的 SQL / 会话
确认是否配置不合理
请告诉我:
onstat -p 输出top 中 Informix 进程情况我可以帮你直接分析参数和 SQL。