在 CentOS 上监控 IBM Informix 通常可以从 系统层、数据库层、日志层、第三方工具 几个维度来做。下面按实用程度给你一个完整思路。
ps -ef | grep oninit
oninit 是 Informix 主进程,正常应存在多个。
netstat -an | grep 1526 # 默认端口可能不同
或
ss -tanp | grep oninit
top
iostat -x 1
free -m
重点关注:
onstat(核心监控命令)onstat -
查看数据库整体状态。
常用命令:
onstat -g ses # 当前会话
onstat -g sql # SQL 执行情况
onstat -g con # 连接信息
onstat -g mem # 内存使用
onstat -p # 性能统计
onstat -g iof # IO 情况
onstat -m
或
onmode -m
cd $INFORMIXDIR/tmp
ls -lh
或
onstat -g msg
tail -f $INFORMIXDIR/tmp/online.log
/var/log/messages
journalctl -xe
示例:定期检查数据库是否存活
#!/bin/bash
ps -ef | grep oninit | grep -v grep
if [ $? -ne 0 ]; then
echo "Informix down" | mail -s "Alert" admin@xx.com
fi
可监控:
| 类别 | 指标 |
|---|---|
| 可用性 | oninit 进程、端口 |
| 性能 | CPU、IO、锁、SQL |
| 容量 | 表空间、chunk |
| 安全 | 连接数、异常登录 |
如果你愿意,可以告诉我:
我可以直接给你 可运行的监控脚本或 Zabbix 模板。