vbirding 发表于 2010-03-02 09:59

请问dbaccess 数据库 非常的慢是什么原因?

server机型:hp-rp7420
OS:HP-UXB.11.11
数据库版本:Informix Dynamic Server Version 7.31.FD4W6

这两天系统总是出现dbaccess ds然后要等待好几分钟才能进去!如下图

检查了系统状态一切貌似正常:
dpbgp01<on_tcp92></u/inf7.3>$onstat -

Informix Dynamic Server Version 7.31.FD4W6   -- On-Line -- Up 00:07:45 -- 5814080 Kbytes

dpbgp01<on_tcp92></u/inf7.3>$onstat -g lmx

Informix Dynamic Server Version 7.31.FD4W6   -- On-Line -- Up 00:24:04 -- 5814080 Kbytes

Locked mutexes:
mid      addr             name               holder   lkcntwaiter   waittime
9      c000000000432830 session            3691   0      6730   0

dpbgp01<on_tcp92></u/inf7.3>$onstat -g wmx

Informix Dynamic Server Version 7.31.FD4W6   -- On-Line -- Up 00:24:24 -- 5814080 Kbytes

Mutexes with waiters:
mid      addr             name               holder   lkcntwaiter   waittime

online.log当时的日志如下图:


小弟才学疏浅,trobuleshooting能力有限,最后选择了重启引擎,
重启引擎后最多也就一天又会出现这样的问题,现在是第三次重启了,今特发帖请达人指点
(也不知道我的问题描述清楚没得,语言表达能力有限请各位见谅)

vbirding 发表于 2010-03-02 10:07

在这里再附上数据库的onconfig文件

liaosnet 发表于 2010-03-02 13:10

慢的时候使用
truss dbaccess ds
看下输出~

vbirding 发表于 2010-03-02 15:54

回复 3# liaosnet

vbirding 发表于 2010-03-02 16:00

回复 3# liaosnet

廖大侠,怎么我的server上找不到truss这个指令呢?
dpbgp01<on_tcp92></u/inf7.3/sad/0302>$truss dbaccess ds
su: truss:找不到.
root@dpbgp01:/ # man truss
沒有 truss 的線上援助頁項目

难道是aix的专有指令:dizzy:

liaosnet 发表于 2010-03-02 16:31

额...hp-ux下有跟truss类似的strace,不过这个strace我不会~:oops:

哦,应该是这个tuse, 看下你系统里有没..
http://hpux.connect.org.uk/hppd/hpux/Sysadmin/tusc-7.8/

vbirding 发表于 2010-03-02 17:08

回复 6# liaosnet


首先谢谢廖大侠您的回复。
我的系统上没有tuse这个指令
dpbgp01<on_tcp92></u/inf7.3>$tuse dbaccess ds
su: tuse:找不到.
但有strace这个指令,我在测试机上用执行strace dbaccess ds,出现的信息太多如下图所示,根本无法抓取到有效信息



另补上遗漏的一点信息:出现故障时,onstat -g lmx 会出现些nsf.lock队列;onstat -u 查看到的用户session有很多如下图所示的首字母S状态的情况
位址   旗標    sessid   使用者   tty      等待   tout 鎖定nreads   nwrites
67fe1018 S--P--D 1      informix -      0      0    0   29       8
(这个是我在测试机上拿出来的一个事例,S状态是手动加上去的)
不知道是怎么回事,请指教。

liaosnet 发表于 2010-03-02 18:11

回复 7# vbirding


    http://www-01.ibm.com/support/docview.wss?uid=swg21145897

vbirding 发表于 2010-03-02 21:45

回复 8# liaosnet


   这个文件我之前查过,但是觉得没什么帮助,谢谢了

liaosnet 发表于 2010-03-02 22:01

本帖最后由 liaosnet 于 2010-03-02 22:05 编辑

回复liaosnet


   这个文件我之前查过,但是觉得没什么帮助,谢谢了
vbirding 发表于 2010-03-02 21:45 http://bbs.chinaunix.net/images/common/back.gif


NETTYPE         ipcshm,5,3000,CPU# Configure poll thread(s) for nettype
NETTYPE         soctcp,5,3000,NET# Configure poll thread(s) for nettype            -->这条改成NETTYPE         soctcp,5,3000,CPU

BTW: IBM 建议 NETTYPE 的轮询线索不要太多.一般250以内为宜..如果你的用户数真的有3000*5,建议还是通过使用用户代理使用数据库..

NETTYPE         soctcp,5,250,CPU

BTW2: 在使用strace command 时,在它挂着的时候,截下屏以使你记下在 什么时间 命令挂住了..再回朔STDOUT查询具体原因...如你所说是在执行dbaccess时慢,但总能执行成功,那么它有很在的机率是在等待什么资源的时候挂住了,一般情况下可能是等待内存分配,或者其它限制什么的..
页: [1] 2
查看完整版本: 请问dbaccess 数据库 非常的慢是什么原因?