Informix数据库的日志主要分为两类,用于保障数据一致性与可恢复性:
在CentOS系统中,Informix日志文件的默认存储路径通常为:
/opt/IBM/informix/etc/log 或 /var/log/informix(具体路径由onconfig配置文件中的LOGPATH参数定义);LOGPATH指定的目录下,文件名通常包含phys(物理日志)、log(逻辑日志)标识。Informix的日志参数通过onconfig配置文件(位于$INFORMIXDIR/etc/onconfig)设置,关键参数包括:
LOGFILES(逻辑日志文件数量,默认10个)、LOGSIZE(每个逻辑日志文件大小,默认200000页,约160MB)、LOGBUFF(逻辑日志缓冲区大小,默认64页);PHYSFILE(物理日志文件大小,默认10000页,约80MB)、PHYSBUFF(物理日志缓冲区大小,默认32页)。修改参数后,需重启Informix数据库使配置生效(onmode -ky停止数据库,oninit启动数据库)。
使用logrotate工具自动轮转Informix日志,防止日志文件过大占用磁盘空间。需编辑/etc/logrotate.d/informix配置文件,示例配置如下:
/var/log/informix/logfiles/*.log {
daily # 每天轮转
rotate 7 # 保留7份旧日志
compress # 压缩旧日志(使用gzip)
missingok # 若日志文件不存在也不报错
notifempty # 若日志为空则不轮转
create 0644 informix informix # 创建新日志文件,权限为0644,属主/属组为informix
}
配置完成后,logrotate会按计划(如每天)自动执行轮转任务。
onstat -l命令,可显示逻辑日志的使用情况(如哪些日志正在使用、哪些已备份)、物理日志的大小与状态;tail -f /var/log/informix/logfiles/*.log实时查看最新日志内容;grep "error" /var/log/informix/dbserver.log查找错误日志,或less分页查看日志文件;onlog命令解析逻辑日志内容(如查看特定事务的详细操作),适用于调试场景。ontape工具执行0级备份(完整备份),命令:ontape -s -L 0(-s表示备份,-L 0表示0级备份);onparams -d -l logid命令删除旧逻辑日志(logid为日志文件ID,通过onstat -l获取)。注意:务必先备份再删除,否则可能导致数据丢失。journalctl命令监控系统日志(若Informix使用systemd管理),例如journalctl -u informix -f实时查看Informix服务的日志;chmod 0640 /var/log/informix/*.log,属主为informix,属组为dba);$INFORMIXDIR/aaodir/adtcfg文件设置审计参数(如记录用户登录、权限更改操作),便于安全事件调查;通过以上步骤,可有效管理CentOS环境下Informix数据库的日志文件,保障数据库的稳定运行、数据安全及合规性。