周日闲来无事, 因为周五忙到比较晚, 所以干脆不回南京了, 一个人的周末能做什么呢? 洗了一大堆衣服和床单, 留下了一点时间来改进一下MyLOG软件, 增加了按Layer和Opcode进行查找的功能, 周一晚上继续改进, 居然给我加成了按对对象号(Object ID)来查找的功能, 但目前还仅限于对表或索引进行维护的类型, 不过这已以是一个很大的进步了. 另外在上篇中写的TAIL命令也集成了这个查找功能.
SEARCH option value [option value]
TAIL option value [option value]
DUMP option value [option value]
OPTION
OP layer
SUBOP opcode
START start redo block
END end redo block
BLOCK in given block
OBJECT object id
分别来偿试一下这些命令的查找功能吧!
LOG> tail object 61 start 2
Start tailing redo operation ...
0x00005e30.00003eb8.0010 2006-08-23 19:08:58
[05.02] [Trans Undo ] Update rollback segment header - KTURDH
[05.01] [Trans Undo ] Undo block or under segment header - KTURDB
[11.05] [Row Access ] Update Row Piece
[05.19] [Trans Undo ] Transaction start audit log record
LOG> search object 61 start 2
Start search opcode = [00.00] ...
Seq=24112, Start=16056, Offset=0x0010=16, End=16057, Time=2006-08-23 19:08:58
LOG> dump object 61 start 2
Start dump redo operation ...
REDO RECORD -- RBA=0x00005e30.00003eb8.0010 LEN=0x0284 VLD=0x01 SCN=0x031f.05c0098c
CHANGE#=0x01 OP=5.2 SEQ=1 TYP=0 CLS=43 OFFS=0x000c LEN=0x003c DBA=0x6280b402 ...
PIECE#=2 OFFS=0x001c LEN=0x0020 SIZE=0x0020
ktudh redo: slt=0x0045 sqn=0x000daa80 flag=0x0412 siz=228 fbi=0
uba=0x3b41c2dd.3bce.00 pxid=0x0000.000.00000000
CHANGE#=0x02 OP=5.1 SEQ=8 TYP=0 CLS=44 OFFS=0x0048 LEN=0x0114 DBA=0x3b41c2dd ...
PIECE#=2 OFFS=0x0038 LEN=0x0014 SIZE=0x0014
ktudb redo: siz=0x00e4 spc=0x000000ac flag=0x0012 seq=0x00ce rec=0x00
xid=0x000e.045.000daa80
PIECE#=3 OFFS=0x004c LEN=0x0030 SIZE=0x0030
ktubu redo: slt=69 rci=0 opc=11.1 objn=61 objd=61 tns=0
PIECE#=4 OFFS=0x007c LEN=0x0020 SIZE=0x0020
......
有了这些命令, 我想谁都可以研究日志格式了.