v$lock中block的含义

v$lock的block列表明的是这个锁是否阻塞了其它的锁
block常见的取值有3个:
0 ->没有阻塞 block=0不是说没有锁,它表明的意思是它的锁占用并没有阻碍别人。也就是我占着这个锁资源,我也没妨碍你操作这块资源,这与锁类型有关。v$lock中并不是所有的id1都表示object_id,这也与锁类型有关。只有锁类型为'TM'时,id1才表示object_id,再例如当锁类型为'TS'时,此时的id1表示的是TS$的TS#这列。


1 ->正在阻塞,此时可以用如下的语句查一下谁阻碍了谁
SELECT L1.SID, ' IS BLOCKING ', L2.SID
  FROM V$LOCK L1, V$LOCK L2
WHERE L1.BLOCK = 1
   AND L2.REQUEST > 0
   AND L1.ID1 = L2.ID1
   AND L1.ID2 = L2.ID2;
2 ->这也是你遇到的,一般发生在rac或ops这样的环境,它表明这是一个全局的锁,RAC环境下GV$LOCK.BLOCK=2表示一个全局的潜在锁定冲突,对于查询阻塞没有什么意义

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/196700/viewspace-1177602/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/196700/viewspace-1177602/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值