oracle block数据块itl小记

--顺便研究下flag列的含义;我想与数据是否提交有关吧
 Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
0x02   0xffff.000.00000000  0x00000000.0000.00  C---    0  scn 0x0000.007a0e29

1,itl由itl id,xid,uba,flag,lck,scn/fsc组成
2,每发生一事务占用一个itl条目
3,如事务已提交,则itl条目可以重复使用
4,scn/fsc即事务提交产生的scn
5,一个itl条目占用46b大小

6.xid对应v$transaction
7,uba包括三部分:
    第一部分对应undo dba:又由undo file号和数据块号组成,即上述的0x00000000
    第二部分对应undo seq:
    第三部分对应undo 记录号
   
    如下查出的结果分别与上述undo一一对应
  SQL> select ubafil,ubablk,ubasqn,ubarec from v$transaction;
 
    UBAFIL     UBABLK     UBASQN     UBAREC
 ----------  ---------- ---------- ----------
         3      65401        215         54
        
        
8,flag:事务标志位;
       有几个值:
          ----- 表示事务是活动的,或块清除前提交事务
          C---- 事务已提交并且清除了行锁定
          -B---  this undo record contains the undo for this ITL entry
          -U--  事务已提交(scn已是最大值),但锁定未清除(快速清除)        
          ---T  当块清除的scn被记录时,该事务仍是活动的,块上如果有已提交的事务
          那么在clean out时,块会被清除,但块里面的事务不会被清除
         
9,lock:影响的记录数

10:scn/fsc:快速提交(fast commit)的scn或commit scn

11,每条记录的行级锁对应itl条止的序号         

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

转载于:http://blog.itpub.net/9240380/viewspace-756561/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值