在Linux Informix数据库故障排查中,可以采用以下几种方法:
onstat
命令检查checkpoint状态,观察逻辑日志和物理日志的使用情况。BUFFERS
大小,通常设置为内存大小的1/4。LRUS
队列数量,建议为32。LRU_MAX_DIRTY
和LRU_MIN_DIRTY
比例,建议为2/1。CLEANERS
数量,根据磁盘数目和数据库空间数目配置。CHKPTINTVL
参数,影响checkpoint频率。onstat -x
检查事务的逻辑日志起始位置。onparams -a -d <DBspace> -s <size> -i
增加新的逻辑日志。px.sh
脚本迅速收集数据库运行会话信息,分析SQL语句执行情况。onstat -u -r 5|grep -E "B-|L-|active"
:检查等待状态会话。onstat -u -r 5|grep -E "PR|PX|active"
:检查关键区操作会话。onstat -u |grep -E "PX|PR"|awk '{print "onstat -g ses "$3}'|sh
:分析PR或PX状态会话及SQL。onstat -u |grep -E "B-|L-"|awk '{print "onstat -g ses "$3}'|sh
:分析等待buffer或lock的会话及SQL。onstat -u
命令查看锁等待和事务状态。df -h
命令。通过上述方法,可以有效地排查和解决Linux Informix数据库的故障。在实际操作中,建议结合具体情况进行调整和优化。