在 Ubuntu 上监控 IBM Informix 数据库,通常可以从 系统层、数据库层、日志层、以及第三方工具 四个层面来做。下面给你一套比较完整、实用的监控方案。
ps -ef | grep oninit
如果看到多个 oninit 进程,说明数据库正在运行。
onstat -
输出示例:
IBM Informix Dynamic Server Version 14.10.FC5
Status: Up
如果 onstat 不可用,检查环境变量:
echo $INFORMIXDIR
echo $INFORMIXSERVER
onstat 系列(最重要)onstat -
onstat -g cpu
onstat -g mem
onstat -g ses
onstat -g lck
onstat -g iof
onstat -g lon
✅ 生产环境最常用组合
onstat -g ses
onstat -g lck
onstat -g iof
top
htop
iostat -x 1
vmstat 1
netstat -an | grep 9088
# 或
ss -lntp
pidstat -p $(pgrep oninit) 1
cd $INFORMIXDIR/tmp
tail -f online.log
常见关注点:
Long transactionCheckpointDeadlockAssertion failurejournalctl -xe
SELECT * FROM sysmaster:syssessions;
SELECT * FROM sysmaster:syslocks;
SELECT * FROM sysmaster:sysdbspaces;
onstatonstat / SQL✅ 必须监控:
⚠️ 建议监控:
#!/bin/bash
INFORMIXDIR=/opt/informix
export INFORMIXDIR
$INFORMIXDIR/bin/onstat -g ses | grep -c active
如果你愿意,我可以帮你:
你现在用的是 Informix 哪个版本?单机还是集群?