ORACLE V$lock视图TYPE,ID1,ID2取值的含义

教程发布:风哥 教程分类:ITPUX技术网 更新日期:2022-02-12 浏览学习:31

ORACLE V$lock视图TYPE,ID1,ID2取值的含义

在oracle v$lock视图中,下面对type,ID1,ID2三个列的具体含义说明下:
TYPE 有TM,TX两种类型,TX为行级锁,事物锁,TM锁为表级锁

[td=55][align=RIGHT]TYPE[td=324]ID1[td=189]ID2
[td=55][align=RIGHT]TM[td=324]被修改表的标识(object_id)[td=189]0
[td=55][align=RIGHT]TX[td=324]以十进制数值表示该事务所占用的回滚段号与该事务在该回滚段的事务表(Transaction table)中所占用的槽号(slot number,可理解为记录号)。其组成形式为: 0xRRRRSSSS ( RRRR = RBS number, SSSS = slot )。[td=189]以十进制数值表示环绕(wrap)次数,即该槽(slot)被重用的次数;

当type为TM时,6718为对象ID号
SQL> select type,id1,id2 from v$lock where sid in (16,17);
TYPE ID1 ID2
---- ---------- ----------
TX 65572 56
TM 6718 0
TM 6718 0
TX 65572 56
SQL> select object_id from DBA_OBJECTS WHERE WNER='SYS' and object_name='TEST';
OBJECT_ID
----------
6718
SQL>
当type为TX时,65572通过以下换算方式得到回滚段号和回滚段所占用的事物槽号

SQL> select xidusn,xidslot from v$transaction;
XIDUSN XIDSLOT
---------- ----------
1 36

SQL> select trunc(65572/65536),mod(65572,65536) from dual;
TRUNC(65572/65536) MOD(65572,65536)
------------------ ----------------
1 36

本文标签:
网站声明:本文由风哥整理发布,转载请保留此段声明,本站所有内容将不对其使用后果做任何承诺,请读者谨慎使用!
【上一篇】
【下一篇】