在 Linux 上监控 Informix 数据库,一般从 操作系统层 + Informix 自身工具 + 日志 + 第三方工具 三个层面来做。下面给你一套比较完整、实用的监控方案。
onstat(核心监控命令)onstat 是 Informix 最重要的实时监控工具。
# 查看数据库状态
onstat -
# 查看当前连接会话
onstat -u
# 查看正在执行的 SQL(线程)
onstat -g sql
# 查看锁等待
onstat -g wai
# 查看锁信息
onstat -k
# 查看 CPU 使用情况
onstat -g cpus
# 查看内存使用
onstat -g mem
# 查看磁盘 IO
onstat -g iof
# 查看检查点
onstat -g ckp
✅ 重点监控
onstat -g wai)onstat -x)oncheck(检查数据库一致性)oncheck -pe # 查看 extent 使用情况
oncheck -ci # 检查索引
onmode(运行状态控制)onmode -l # 切换逻辑日志
onmode -c # 强制检查点
默认路径:
$INFORMIXDIR/tmp/online.log
实时监控:
tail -f $INFORMIXDIR/tmp/online.log
✅ 关注内容:
$INFORMIXDIR/log/*
top
htop
vmstat 1
iostat -x 1
关注:
ps -ef | grep oninit
典型进程:
oninitonbarontapedf -h
Informix 重点关注:
SELECT sid, user, pid, hostname, state
FROM sysmaster:syssessions;
SELECT * FROM sysmaster:syslocks;
SELECT * FROM sysmaster:sys transactions
WHERE tx_state = 'LONG';
onstat -c
重点参数:
BUFFERSLOCKSLOGSIZENUMCPUVPSonstat -d
防止:
定时执行:
onstat示例:
*/5 * * * * onstat -u >> /var/log/informix_monitor.log
| 类别 | 指标 |
|---|---|
| 性能 | CPU、IO、内存 |
| 数据库 | 会话数、长事务 |
| 锁 | 锁等待、死锁 |
| 空间 | dbspace、日志 |
| 稳定性 | 检查点、错误日志 |
✅ 日常
onstat -
onstat -u
onstat -g wai
tail -f online.log
✅ 定期
onstat -ddf -h✅ 生产环境
如果你愿意,我可以:
你现在用的是 Informix 哪个版本?单机还是集群?