解密Oracle資料存取演算法(附程式碼、演算法分析)

ysjxjf發表於2006-12-06
解密Oracle資料存取演算法(附程式碼、演算法分析)[@more@]經過幾天的努力,終於對Oracle資料存取演算法有所突破,並寫成相應的函式。

下面是Obj$表的Dump檔案的一部分:
col 0: [ 3] c2 08 07
col 1: *NULL*
col 2: [ 1] 80
col 3: [20] 56 5f 24 44 4c 4d 5f 43 4f 4e 56 45 52 54 5f 4c 4f 43 41 4c
col 4: [ 2] c1 02
col 5: *NULL*
col 6: [ 2] c1 05
col 7: [ 7] 78 69 05 13 0b 01 03
col 8: [ 7] 78 69 05 13 0b 01 03
col 9: [ 7] 78 69 05 13 0b 01 03
col 10: [ 2] c1 02
col 11: *NULL*
col 12: *NULL*
col 13: [ 1] 80
col 14: *NULL*
col 15: [ 2] c1 07
col 16: [ 4] c3 07 38 24

以下是處理結果:
第一列 obj#
SQL> select uh16('c2 08 07') from dual ;
706
第二列 dataobj# 空值,略。
第三列 owner#
SQL> select uh16('80') from dual ;
0
第四列 name
SQL> select uh16(' 56 5f 24 44 4c 4d 5f 43 4f 4e 56 45 52 54 5f 4c 4f 43 41 4c')
from dual ;
V_$DLM_CONVERT_LOCAL
第五列 namespace
SQL> select uh16('c1 02') from dual ;
1
第六列 subname 空值,略。
第七列 type#
SQL> select uh16('c1 05') from dual ;
4
第八列 ctime
SQL> select uh16('78 69 05 13 0b 01 03') from dual ;
2005-05-19 10:00:02
第九列 mtime 同上,略。
第十列 stime 同上,略。
第十一列 status
SQL> select uh16('c1 02 ') from dual ;
UH16('C102')
--------------------------------------
1
第十二列 remoteowner 空值,略。
第十三列 linkname 空值,略。
第十四列 flags 80(即0)
第十五列 oid$
第十六列 spare1
SQL> select uh16('c1 07') from dual ;
6
第十七列 spare2
SQL> select uh16('c3 07 38 24') from dual ;
65535
其餘為空,略。
obj#=706的全部資訊:
OBJ# DATAOBJ# OWNER# NAME NAMESPACE SUBNAME TYPE# CTIME MTIME STIME STATUS REMOTEOWNER LINKNAME FLAGS OID$ SPARE1 SPARE2 SPARE3 SPARE4 SPARE5 SPARE6
---------- ---------- ---------- ------------------------------ ---------- ------------------------------ ---------- ----------- ----------- ----------- ---------- ------------------------------ -------------------------------------------------------------------------------- ---------- -------------------------------- ---------- ---------- ---------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -----------
706 0 V_$DLM_CONVERT_LOCAL 1 4 2005-5-19 1 2005-5-19 1 2005-5-19 1 1 0 6 65535

從上面可以看出,轉換後的結果與實際相符。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/66634/viewspace-881781/,如需轉載,請註明出處,否則將追究法律責任。

相關文章