117.info
人生若只如初见

centos informix故障排查指南

在CentOS系统上安装和运行Informix时,可能会遇到各种故障。以下是一些常见的故障及其排查步骤:

1. 长事务问题

故障现象

  • 出账业务无法处理。
  • 批价处理卡住。
  • 所有前台应用失败。
  • 很多表被锁死。

排查步骤

  1. 使用 onstat -x -r 10 命令监控长事务的回滚状态,通过日志回滚的速率估算回滚时间。
  2. 查看Informix运行日志路径:onstat -c grep MSG MSGPATH informix/online_charge.log
  3. 在日志文件中查找最近一条“Aborting Long Transaction”记录,确定具体事务。
  4. 使用 onstat -ugrep (userthread) 查找会话ID,确定哪些会话受影响。
  5. 使用 onstat -g ses 找出会话在做什么,定位触发长事务的具体动作。

2. 逻辑日志满

故障现象

  • 数据库不再进行任何操作。
  • 使用 onstat –l 命令观察逻辑日志状态,所有逻辑日志都处于已使用未备份状态(flags 为U------)。

排查步骤

  1. 检查逻辑日志备份是否出现问题,可能是磁带满或磁带机故障。
  2. 个别情况下,即使逻辑日志标志为已备份但仍然是不可使用的,可以通过 onstat –x 检查其 beginlg 来确定事务的逻辑日志起始位置。
  3. 在IDS 9.3x 或以后的版本上,可以使用逻辑日志联机增加的功能,在当前逻辑日志后增加新的逻辑日志。

3. 频繁的锁冲突

故障现象

  • 出现锁错误码 -243(Could not position within a table)和 -244(Could not do a physical-order read to fetch next row)。

排查步骤

  1. 确定表的 partnum,通过查询 systablesoncheck –pt database:tabname 查看。
  2. 使用 onstat –k grep partnum 查找相应的信息,观察其 owner 字段的地址信息。
  3. 使用 onstat –u grep address 获得实际的会话信息,找到具体的锁的拥有者。

4. 数据库 chunk 出现异常,I/O 失败

故障现象

  • 数据库日志中出现 chunk IO 错误,使用 onstat –d 观察 chunk flag 的状态是 down 的状态,数据库操作中不能操作包含在这些 chunk 中的数据。

排查步骤

  1. 根据可能性逐一进行检查,如磁盘设备问题、chunk 使用的设备不存在、使用的链接设备不存在、设备的权限错误等。
  2. 使用 dd 命令实际读取该设备,只能做读取操作,不能写入。

5. Informix 安装问题

故障现象

  • 安装过程中出现错误,如“the wizard cannot continue because of the following error: could not load wizard specified in /wizard.inf (104)”。

排查步骤

  1. 通过 which java 找出 Java 的目录,后指定安装参数 javahome。例如:./ids_install -javahome /usr/bin/java
  2. 如果提示缺少 libm.so.6libc.so.6,使用以下命令安装:
    yum install glibc glibc.i686 glibc-devel.i686 glibc-static.i686 -y
    yum install ncurses ncurses-devel.i686 ncurses-lib.i686 -y
    

通过以上步骤,可以有效地排查和解决CentOS系统上运行Informix时遇到的一些常见问题。如果问题依然存在,建议参考Informix的官方文档或联系IBM支持获取进一步的帮助。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fefacAzsNAgJUAFM.html

推荐文章

  • centos分区故障如何修复

    当CentOS系统遇到分区故障时,可以采取以下步骤进行修复:
    1. 进入救援模式 使用光盘或Live CD:通过远程管理卡挂载一个新的CentOS 7镜像,重启系统后进入救...

  • centos如何挂载FTP服务器

    在CentOS上挂载FTP服务器,您可以使用curlftpfs工具。请按照以下步骤操作: 首先,确保您的系统已更新: sudo yum update 安装curlftpfs: sudo yum install cur...

  • 如何利用centos提升phpstorm工作效率

    在CentOS系统中,可以通过以下几种方法来提升使用PhpStorm的工作效率:
    使用快捷键
    学习和熟练使用PhpStorm的快捷键可以显著提高编程速度。例如,Ctrl...

  • centos spool能删除吗

    在 CentOS 系统中,/var/spool 目录通常用于存储临时文件、邮件队列、打印队列等。这个目录下的某些子目录和文件是可以删除的,但需要谨慎操作,以免影响系统的正...

  • Ubuntu MySQL如何监控

    在Ubuntu上监控MySQL数据库可以通过多种工具和方法来实现,以下是一些常用的监控工具和方法:
    实时监控工具 Innotop:一个命令行程序,专为监控运行在InnoD...

  • Debian上如何安装Java环境

    在Debian上安装Java环境,你可以选择安装OpenJDK(开源版本)或者Oracle JDK(商业版本)。以下是安装OpenJDK的步骤: 打开终端(快捷键:Ctrl + Alt + T) 更新...

  • Debian Context中如何提升网络传输速度

    在Debian系统中,有多种方法可以提升网络传输速度。以下是一些常见的方法:
    禁用IPv6模块 打开终端,使用以下命令禁用IPv6模块:
    sudo rmmod -f ipv6 ...

  • SFTP如何恢复误删除文件

    在SFTP中误删除文件后,恢复的可能性取决于多个因素,包括文件是否被覆盖、删除后的操作等。以下是一些可能的恢复方法和预防措施:
    恢复方法 使用数据恢复软...