在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

数据库中v$lockv和$locked

106次阅读
没有评论

共计 1870 个字符,预计需要花费 5 分钟才能阅读完成。

这篇文章给大家分享的是有关数据库中 v$lockv 和 $locked_object 的区别有哪些的内容。丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,一起跟随丸趣 TV 小编过来看看吧。

一、引言
工作中有次修改表 sj_affair 中的数据,需要禁用该表上的触发器。结果无法禁用,报如下错误:
ORA-00054: resource busy and acquire with NOWAIT specified
很明显,是该表被锁定了,于是打算 kill 掉锁住该表的会话。步骤如下:

1. 查出锁住该表的会话 id,serial#

SELECT o.object_name,s.sid, s.serial#
  FROM v$locked_object l, dba_objects o, v$session s
  WHERE l.object_id = o.object_id
  AND l.session_id = s.sid
  AND o.object_name= SJ_AFFAIR
   
2.kill 掉该会话
alter system kill session sid, serial#

kill 掉会话之后再次查询,发现该表上已经没有锁了。于是再次试图禁用触发器,结果奇怪了,还是无法禁用。
是不是锁又恢复了呢?再次查询,发现没有锁。这是为什么呢?
在网上搜了很多,发现一条有用的信息,作者查询锁用的是 v$lock 视图,而不是 v$locked_object 视图。改成查询 v$locd 视图:

SELECT o.object_name,s.sid, s.serial#
  FROM v$lock l, dba_objects o, v$session s
  WHERE l.id1 = o.object_id
  AND l.sid = s.sid
  AND o.object_name= SJ_AFFAIR
   
然后再次查询,发现 SJ_AFFAIR 上居然还有锁。于是再次 kill,然后禁用触发器就成功了。

二、V$LOCK 和 V$LOCKED_OBJECT
查询锁表都会用到 V$LOCK 和 V$LOCKED_OBJECT, 但这两者不是相同的。我们先看看它们各自的主要字段:
1.v$lock
  sid:  会话 SID,通常与 v$session 关联。
  type:  锁类型,TM 表示表锁或 DML 锁,TX 表示行锁或事务锁,UL 表示用户锁。我们主要关注 TX 和 TM 两种锁, 其它均为系统锁,会很快自动释放,不用关注。  行锁不会单独存,行级锁之前需要先加表级共享锁。
  lmode:  会话保持的锁的模式。
 0=None;1=Null;2=Row-S (SS, 行级共享锁,其他对象只能查询这些数据行);3=Row-X (SX, 行级排它锁, 在提交前不允许做 DML 操作);4=Share(共享锁);5=S/Row-X (SSX, 共享行级排它锁);6=Exclusive(排它锁)
   
ID1,ID2: ID1,ID2 的取值含义根据 type 的取值而有所不同,对于 TM 锁 ID1 表示被锁定表的 object_id 可以和 dba_objects 视图关联取得具体表信息,ID2 值为 0;对于 TX 锁,ID1 以十进制数值表示该事务所占用的回滚段号和事务槽 slot number 号, 其组形式: 0xRRRRSSSS,RRRR=RBS/UNDO NUMBER,SSSS=SLOT NUMBER,ID2 以十进制数值表示环绕 wrap 的次数,即事务槽被重用的次数
   
2.V$LOCKED_OBJECT
  session_id:  会话 id。通常与 v$session 关联。
  object_id:  被锁对象标识。通常与 dba_objects 关联。
  oracle_username:  登录 oracle 用户名。
  os_user_name:  电脑用户名如:Administrator
  locked_mode:  会话保持的锁的模式。   
   
三、两者的区别
1.V$LOCKED_OBJECT 只能报发生等待的表级锁, 不能报发生等待的行级锁。
注:这句话是网上别人说的,暂时未验证,需慎重考虑。但是从我遇到的问题来看,似乎是正确的。只是我的问题已经无法重现,也就失去了验证它的机会。

2.v$locked_object 包含的是当前 DB 中被锁住的 OBJECT,而 v$lock 不仅包含用户的,还包括系统被锁住的 object,即:V$LOCK v$locked_object

感谢各位的阅读!关于“数据库中 v$lockv 和 $locked_object 的区别有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-17发表,共计1870字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 搡老女人老妇女老熟妇 | 99热久久这里就有精品 | 久久99精品视免费看 | 绝顶高潮合集videos | 日韩a在线观看 | 国产精品成人免费视频网站京东 | 韩国19禁青草福利视频在线 | 亚洲国产另类久久久精品网站 | 午夜激情视频在线播放 | 日韩欧美视频在线一区二区 | 久久久久亚洲精品男人的天堂 | 亚洲自偷自偷图片 | 亚洲日本一区二区三区在线 | 97国产婷婷综合在线视频 | 亚洲成a v人片在线看片 | 不卡二区| 久99久无码精品视频免费播放 | 伊人久热这里只有精品视频99 | 婷婷色综合成人成人网小说 | 久久免费播放 | 精品一区二区三区高清免费不卡 | 欧美一级日韩一级亚洲一级va | 少妇做爰免费视频了 | 色一情一乱一伦一区二区三区 | 成人18在线视频播放 | 国产精品视频在线播放 | 性少妇中国内射xxxx狠干 | 午夜精品久视频在线观看 | 青青草国产免费一区二区 | 国产一区二区三区视频在线观看 | 人妻少妇乱子伦精品 | 一道本在线播放 | 天堂网站在线观看 | 免费一级毛片在线播放欧美 | 青青免费| 亚洲热视频 | 天天噜噜日日噜噜久久综合网 | 国产一区二区三区精品久久呦 | 在线观看片免费人成视频播放 | 999热这里全都是精品 | 91九色视频在线观看 |