温馨提示×

如何查看Informix的日志

小樊
42
2026-07-17 00:05:48
栏目: 编程语言

在 Informix 中,“日志”通常指 数据库事务日志(Logical Log / Physical Log),也可能包括 在线日志(Online Log / 消息日志)操作系统级日志。下面按常见场景说明如何查看。


一、查看 Informix 在线日志(最常用)

1️⃣ 在线日志(Online Log / Message Log)

记录数据库启动、关闭、检查点、错误等信息。

查看当前在线日志路径

onstat -c | grep MSGPATH

常见路径示例:

$INFORMIXDIR/tmp/online.log

查看日志内容

tail -f $INFORMIXDIR/tmp/online.log

tail -n 200 $INFORMIXDIR/tmp/online.log

二、查看事务日志(Logical Log)

1️⃣ 查看逻辑日志状态

onstat -l

输出示例字段说明:

  • address:日志地址
  • flags:状态(U=Used, B=Backed up, C=Current)
  • uniqid:日志唯一 ID
  • size:日志大小

2️⃣ 查看逻辑日志内容(需要日志分析工具)

⚠️ 逻辑日志是二进制文件,不能直接 cat 查看

使用 onlog 查看逻辑日志内容

onlog -l

常用参数:

onlog -l -n 10        # 显示最近 10 条
onlog -l -u username  # 查看某用户的事务
onlog -l -d dbname    # 查看某数据库

三、查看物理日志(Physical Log)

物理日志用于 快速恢复(Fast Recovery)

查看物理日志信息

onstat -P

物理日志一般不直接“查看内容”,只关注状态和大小。


四、查看数据库错误与异常

1️⃣ 查看最近错误

onstat -m

显示最近数据库消息(来自 online.log)


五、查看 checkpoint / 长事务 / 锁日志

1️⃣ 长事务

onstat -x

2️⃣ 锁信息

onstat -k

3️⃣ Checkpoint 信息

onstat -c | grep CKPT

六、查看操作系统级日志(辅助排查)

Linux 示例

dmesg | tail
/var/log/messages
/var/log/syslog

七、常用 Informix 日志相关命令速查表

目的 命令
在线日志路径 `onstat -c
查看在线日志 tail -f online.log
逻辑日志状态 onstat -l
逻辑日志内容 onlog -l
最近消息 onstat -m
事务信息 onstat -x
锁信息 onstat -k
物理日志 onstat -P

八、补充建议

  • 生产环境排查问题顺序
    1. online.log
    2. onstat -m
    3. onlog -l
  • 若日志过大,建议定期归档或配置日志轮转。
  • 逻辑日志未备份可能导致 数据库挂起

如果你能说明:

  • ✅ Informix 版本
  • ✅ 想查的是 错误日志 / 事务日志 / 恢复日志
  • ✅ 是排查 宕机 / 长事务 / 数据丢失 / 性能问题

我可以给你更精确的查看方法和分析示例。

0