a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 84|回复: 0

[综合] Oracle综合辅导ITL描述

[复制链接]
发表于 2012-8-4 13:54:49 | 显示全部楼层 |阅读模式
ITL描述:
3 q: e( K) [* X0 X/ @   
' J* ^$ Z9 j- k! q. {5 W/ J    ITL(Interested Transaction List)是Oracle数据块内部的一个组成部分,7 i8 N+ f* g" f: F: H& Q% ]
    & R6 T" L% [  y5 \7 `3 ~* z
    位于数据块头(block header),itl由xid,uba,flag,lck和scn/fsc组成,% ]/ F$ k2 n+ \6 }8 _
   
7 k" ?1 b/ @0 K% o" Y7 ]5 X    用来记录该块所有发生的事务,一个itl可以看作是一条事务记录。
7 q$ `- {  E. P( n% n9 f; a    ) U; t* d: R' d2 {
    当然,如果这个事务已经提交,那么这个itl的位置就可以被反复使用了,
. p0 A( b9 O8 Q# k7 ]: J4 O    5 q8 e9 P/ {+ |8 a8 P' |* S
    因为itl类似记录,所以,有的时候也叫itl槽位。如果一个事务一直没有提交,
2 ?) |1 g8 T. e$ |/ v7 O  Y   
: W6 W% M9 p# s# D% E: V; V    那么,这个事务将一直占用一个itl槽位,itl里面记录了事务信息,回滚段的入口,- d1 ^% ?; T' l/ w% M) f3 W
   
) v# |8 N0 ]+ P, j    事务类型等等。如果这个事务已经提交,% ~$ w3 S1 h: [, N
   
2 |( q7 {, i# F' A3 {; S6 x" _    那么,itl槽位中还保存的有这个事务提交时候的SCN号。4 v( L5 e8 s1 ~$ [
   
( Z* ^; u7 }4 i: l$ P. a    ITL个数其最小值为1,由参数initrans控制(由于兼容性的原因,4 Q& h0 m* B2 P2 ]) \
   
( l/ Y7 Z* H2 f# v2 @    oracle会在对象的存储块分配两个itl,所以initrans的最小值实际上为2),
0 L9 b, Y2 k) w( i. |! u   
9 I, C  }# @/ n9 N7 g2 k; o    最大值为255,由参数maxtrans控制,最大值参数在10g以后不能被修改,( _. d+ C9 Q; b% z( \8 I) i. u
   
, _1 Y& G* k2 \6 a    itl是block级的概念,一个itl占用块46B的空间,参数initrans意味着块中
1 {  K- ^  h# s; Y    / ~  |; b  D* a) Y: D# k! A
    除去block header外一部分存储空间无法被记录使用(46B*initrans),
- d" q9 j6 S' ?7 B$ `. ]8 `" _3 n    5 d9 ~/ F; L: R
    当块中还有一定的free space时,oracle可以使用free space构建itl供事务使用,5 D5 z% k, O4 ]3 [3 G" b* n! s
    $ W7 w7 R) b% O2 ^+ C6 t
    如果没有了free space,那么,这个块因为不能分配新的itl,所以就可能发生itl等待。
1 A) m) v$ b7 r6 j* X( T3 L% I- p  |    + v3 O* z8 r4 L& Z0 P
    如果在并发量特别大的系统中,最好分配足够的itl个数,其实它并浪费不了太多的空间,
2 |+ a' j6 y# t# y# H7 ]- H1 H/ |  E    ( a# J3 H# u# w2 r
    或者,设置足够的pctfree,保证itl能扩展,但是pctfree有可能是被行数据给消耗掉的,* q. \, |4 w2 Q+ ]! j
   
3 {+ _1 f3 V0 }5 f3 w. S    如update,所以,也有可能导致块内部的空间不够而导致itl等待。1 W1 T4 W0 p! D7 T  {! P; p
    ; N8 l! e! L/ J. ]7 X: g& `
    dump一个块可以看到ITL信息类似如下:
% Q; ^, E* s9 T   
  Z4 a: F' ^+ d8 ]! G( }    Itl Xid Uba( Q$ Y( R& ^) e0 n  z7 s( x% U
   
: `' }3 o% D, G. O; \; ^+ N    Flag Lck Scn/Fsc
4 E0 R" m8 r6 z0 b  B4 o% O8 A    5 c$ F7 N/ T! D4 B( ~9 V. N9 \& W5 \! U
    0x01 0x0006.002.0000158e 0x0080104d.00a1.6e --U- 734
/ n8 \# S( \! H3 B- p    " @% n; H1 u) q) ]2 i1 s2 K
    fsc 0x0000.6c9deff0
; \7 U1 m  p8 }3 F   
6 d, t' k2 E. B# @# C5 O, ~7 e    0x02 0x0000.000.00000000 0x00000000.0000.00 ---- 0
$ {# f1 s: B( U$ i1 e- o/ O8 g( }4 \% L    & \$ W& _' q" O7 @3 c! i
    fsc 0x0000.000000001 [4 w2 |; M$ x  O- O2 c+ T
    0 L2 y0 ~% P4 R8 U
    Xid:事务id,在回滚段事务表中有一条记录和这个事务对应% _* J& |! b$ _' i% P
    ! Z- `! g- w, A7 D+ W% n
    Uba:回滚段地址,该事务对应的回滚段地址. |) O+ X- M  D9 O
   
: U0 G. n- V) W4 E' x% Y    第一段地址:回滚数据块的地址,包括回滚段文件号和数据块号
4 x$ K% p+ B' D8 v' O   
, Q$ Y3 B" Z% a, N9 k( l: n, ?5 ^2 v    第二段地址:回滚序列号
8 p4 y/ K; i$ A7 [6 G    3 o* r* b( x- R, S5 N2 ~
    第三段地址:回滚记录号
) ^; f: y0 l, K+ J: O      q5 V; E: v/ x% W+ o& A" }& d; ?" U
    SELECT UBAFIL 回滚段文件号,UBABLK 数据块号,UBASQN 回滚序列号,( J4 }, u3 O& r- ?) ~: f& v
    ! O4 }, N% K2 b8 t! R: [
    UBAREC 回滚记录号 FROM v$transaction --查看UBA
# y  [  p" a$ y  a8 z1 @& {$ Q( x    5 f3 A! Y( A) f- [& A
    Flag:事务标志位。这个标志位就记录了这个事务的操作,各个标志的含义分别是:
. B) z( H  A# y' T( _  X' c& q    : t$ n7 ?# t3 h
    ----- = 事务是活动的,或者在块清除前提交事务
. E" f, ^0 j4 {   
1 [* J. J! P9 g9 C1 f' d    C--- = 事务已经提交并且清除了行锁定。
0 U1 Z% A5 s: U, g% ]   
' g( H; G  P/ c    -B-- = this undo record contains the undo for this ITL entry
% l; D6 @0 ~9 I# `9 x   
9 P+ B2 Q$ J6 G- X    --U- = 事务已经提交(SCN已经是最大值),但是锁定还没有清除(快速清除)。
9 C/ W$ u2 H! [" r% F- Q. T* w    & m$ I0 v, r, m8 ~  B1 t: S0 X
    ---T =当块清除的SCN被记录时,该事务仍然是活动的,块上如果有已经提交的事务,. _8 u: K- E& o9 I/ l# D% Z
    : {; `. s& r2 }7 q
    那么在clean ount的时候,块会被进行清除,但是这个块里面的事务不会被清除。
% `  y; K& d* y* [3 ?: Y& t    4 L% a; z$ Z1 f# ?
    Lck:影响的记录数+ k5 {: q% S" I1 o9 x5 l$ r* s
    ' C  K9 S+ _; E) j1 L0 [
    Scn/Fsc:快速提交(Fast Commit Fsc)的SCN或者Commit SCN.
1 q( e7 F. k9 A, s1 P/ L; {   
2 W3 o* s0 T2 N8 l& P    每条记录中的行级锁对应于Itl列表中的序号,即哪个事务在该记录上产生的锁。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-18 18:47 , Processed in 0.426861 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表