在 Linux 上运行 IBM Informix 出现“运行缓慢”的原因通常可以从 系统资源、数据库配置、SQL 与索引、存储与 I/O、操作系统参数 几个层面来分析。下面按常见原因逐一说明,并给出可操作的排查方向。
vp cpu 很高top
onstat -g glo
onstat -g act
SHMTOTAL 配置过大free -h
vmstat 1
onstat -g seg
✅ 建议:Informix 共享内存不要超过物理内存的 70–80%
CPU VPs 太少 → 并发差AIO VPs 太少 → I/O 阻塞关键参数(onconfig):
NUMCPUVPS
NUMAIOVPS
NETTYPE
查看:
onstat -g rea
onstat -g ioq
onstat -p
关注:
readcachepagereads / pagwrites✅ 若 bufreads >> bufwrites 且缓存命中率低,应增加 BUFFERS
排查:
onstat -g ses
onstat -g sql
set explain on;
关注:
✅ 优化:
WHERE func(col)=...UPDATE STATISTICSUPDATE STATISTICS HIGH FOR TABLE tabname;
或
UPDATE STATISTICS LOW;
onstat -g ioq 中队列堆积iostat -x 1
onstat -g dsk
✅ 建议:
查看:
onstat -l
onstat -x
常见问题:
检查:
ipcs -l
ulimit -a
cat /proc/sys/vm/swappiness
建议:
kernel.shmmax
kernel.shmall
fs.file-max
ext4 / xfsatimebarrier=1(视硬件)onstat -g ses | wc -l
top
free -h
iostat -x 1
onstat -g glo
onstat -p
onstat -g ioq
onstat -g ses
onstat -g sql
Linux 上 Informix 慢,80% 是:配置不合理 + SQL 未优化 + I/O 瓶颈
如果你愿意,可以告诉我:
onstat -p 输出我可以帮你做 针对性性能诊断。