用MyLOG解出对COL$系统表进行的操作

    在LOGTAB.TXT中加入如下行:

10000,21,COL$,

    在LOGCOL.TXT中加入如下行, 不过由于COL$是Cluster表, 因此这里列出来的比真实的表列数少一列, 刚好少Cluster的那列:

10000,1,COL#,NUMBER
10000,2,SEGCOL#,NUMBER
10000,3,SEGCOLLENGTH,NUMBER
10000,4,OFFSET,NUMBER
10000,5,NAME,VARCHAR2
10000,6,TYPE#,NUMBER
10000,7,LENGTH,NUMBER
10000,8,FIXEDSTORAGE,NUMBER
10000,9,PRECISION#,NUMBER
10000,10,SCALE,NUMBER
10000,11,NULL$,NUMBER
10000,12,DEFLENGTH,NUMBER
10000,13,SPARE6,DATE
10000,14,INTCOL#,NUMBER
10000,15,PROPERTY,NUMBER
10000,16,CHARSETID,NUMBER
10000,17,CHARSETFORM,NUMBER
10000,18,SPARE1,NUMBER
10000,19,SPARE2,NUMBER
10000,20,SPARE3,NUMBER
10000,21,SPARE4,VARCHAR2
10000,22,SPARE5,VARCHAR2
10000,23,DEFAULT$,LONG

    没有办法知道这个操作是对那个对象进行的, 因为OBJ#列的变更不记录在这儿. 终于明白为什么Shareplex不支持Cluster表了, 不过Single Hash Cluster表应当是可以支持的.

RBA=0x000069.000010b0.0018,  XID=0x0009.016.00000093, RID=AAAAACAABAAAGq4AAR
   DELETE COL$ WHERE  COL# =  3 AND  SEGCOL# =  3 AND  SEGCOLLENGTH =  7 AND  OFFSET =  0 AND  NAME =  'COL3' AND  TYPE# =  12 AND  LENGTH =  7 AND  FIXEDSTORAGE =  0 AND  PRECISION# =   NULL  AND  SCALE =   NULL  AND  NULL$ =  0 AND  DEFLENGTH =   NULL  AND  SPARE6 =   NULL  AND  INTCOL# =  3 AND  PROPERTY =  0 AND  CHARSETID =  0 AND  CHARSETFORM =  0 AND  SPARE1 =  0 AND  SPARE2 =  0 AND  SPARE3 =  0;

    所有的Cluster表都存在这个问题, 因此大部份系统表将不能正常解出Redo SQL.

发表留言:

« Previous | Main | Next »

英语900句 | English 900

  • Did you see the special last night?
  • 昨晚你看特别节目了吗?
  • I don't want to see any more of this TV show.
  • 我不想再看这个电视节目了.
  • Can we change the channel?
  • 能换个频道吗?
  • I want to see the weather.
  • 我想看天气预报.
  • I'd like to make an appointment with Mrs. Green.
  • 我想约个时间见格林女士.