xiaotian_ls 发表于 2013-1-30 02:08:51

informix 锁表

早晨来了,发现今天所有数据都没有上来,查看发现快照表里没有今天的数据,当我想load 昨天的数据出来时,报 245: Could not position within a file via an index. 的错误,informix 锁表问题。处理步骤:
   <1> 在informix用户下找出锁表的用户:onstat -ks|grep HDR+X,输出的内容很多很多,
10ad44850      0                1acf10c10      10d214a70      HDR+X    160009b784e801   0   
10ad44d20      0                1acf10c10      11d51dfa0      HDR+X    160009b1c40301   0   
10ad44e70      0                1acf10c10      123c785d0      HDR+X    160009b70bc201   0   
10ad46840      0                1acf10c10      1135969c0      HDR+X    400880   101da01K- 1   
10ad474f0      0                1acf10c10      115efbe60      HDR+X    160009b6df6301   0   
..........................
   每列分别对应:
Locks address      wtlist      owner          lklist             type          tblsnumrowidkey#/bsiz

锁地址       等待线程列表用户         …列表 锁类型            行id   

      

   <2>   所有的owner列都是1acf10c10,根据owner 找到对应的sessid:

    onstat -u | grep1acf10c10,

看到结果:

1acf10c10      C-RPR-- 5395192npmuser-      10a130358      0    199800 374159   255337

分别对应为:

address          flags   sessid   user   tty      wait             tout locks nreads   nwrites

<3> 用 onstat -g ses 5395192   可以看到具体的内容。

    杀掉session :onmode -z 5395192



最后锁表解决了以后,重新处理今天的数据就没问题了!

具体锁表的原因有必要再做详细查询!
页: [1]
查看完整版本: informix 锁表