BBED> p ktbbh struct ktbbh, 96 bytes @20 ub1 ktbbhtyp @20 0x01 (KDDBTDATA) union ktbbhsid, 4 bytes @24 ub4 ktbbhsg1 @24 0x00012906 ub4 ktbbhod1 @24 0x00012906 struct ktbbhcsc, 8 bytes @28 ub4 kscnbas @28 0x0024e77c ub2 kscnwrp @32 0x0000 sb2 ktbbhict @36 3 ub1 ktbbhflg @38 0x32 (NONE) ub1 ktbbhfsl @39 0x00 ub4 ktbbhfnx @40 0x01001930 struct ktbbhitl[0], 24 bytes @44 struct ktbitxid, 8 bytes @44 ub2 kxidusn @44 0xffff ub2 kxidslt @46 0x0000 ub4 kxidsqn @48 0x00000000 struct ktbituba, 8 bytes @52 ub4 kubadba @52 0x00000000 ub2 kubaseq @56 0x0000 ub1 kubarec @58 0x00 ub2 ktbitflg @60 0x8000 (KTBFCOM) union _ktbitun, 2 bytes @62 sb2 _ktbitfsc @62 0 ub2 _ktbitwrp @62 0x0000 ub4 ktbitbas @64 0x0024e747 struct ktbbhitl[1], 24 bytes @68 struct ktbitxid, 8 bytes @68 ub2 kxidusn @68 0x000d ub2 kxidslt @70 0x0003 ub4 kxidsqn @72 0x000000d7 struct ktbituba, 8 bytes @76 ub4 kubadba @76 0x0140026c ub2 kubaseq @80 0x0202 ub1 kubarec @82 0x04 ub2 ktbitflg @84 0x0001 (NONE) union _ktbitun, 2 bytes @86 sb2 _ktbitfsc @86 0 ub2 _ktbitwrp @86 0x0000 ub4 ktbitbas @88 0x00000000 BBED> set mode edit MODE Edit BBED> set count 16 COUNT 16 这里有一点需要注意的是,测试平台是X86的,如果是小机需要注意了,有一点不一样的地方,不需要高低位转换 BBED> modify /x 0080 offset 84 Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y File: /oracle/app/oracle/oradata/orcl1123/users01.dbf (0) Block: 6451 Offsets: 84 to 99 Dba:0x00000000 ------------------------------------------------------------------------ 00800000 00000000 00000000 00000000 <32 bytes per line> BBED> p ktbbh.ktbbhitl[1] struct ktbbhitl[1], 24 bytes @68 struct ktbitxid, 8 bytes @68 ub2 kxidusn @68 0x000d ub2 kxidslt @70 0x0003 ub4 kxidsqn @72 0x000000d7 struct ktbituba, 8 bytes @76 ub4 kubadba @76 0x0140026c ub2 kubaseq @80 0x0202 ub1 kubarec @82 0x04 ub2 ktbitflg @84 0x8000 (KTBFCOM) union _ktbitun, 2 bytes @86 sb2 _ktbitfsc @86 0 ub2 _ktbitwrp @86 0x0000 ub4 ktbitbas @88 0x00000000 这里可以看到,下面报了行为的itl值有问题 BBED> verify DBVERIFY - Verification starting FILE = /oracle/app/oracle/oradata/orcl1123/users01.dbf BLOCK = 6451 Block Checking: DBA = 16783667, Block Type = KTB-managed data block data header at 0x2a98b8727c kdbchk: row locked by non-existent transaction table=0 slot=0 lockid=2 ktbbhitc=3 Block 6451 failed with check code 6101 DBVERIFY - Verification complete Total Blocks Examined : 1 Total Blocks Processed (Data) : 1 Total Blocks Failing (Data) : 1 Total Blocks Processed (Index): 0 Total Blocks Failing (Index): 0 Total Blocks Empty : 0 Total Blocks Marked Corrupt : 0 Total Blocks Influx : 0 Message 531 not found; product=RDBMS; facility=BBED BBED> p *kdbr[0] rowdata[0] ---------- ub1 rowdata[0] @8023 0x2c BBED> set offset 8023 OFFSET 8023 BBED> dump File: /oracle/app/oracle/oradata/orcl1123/users01.dbf (0) Block: 6451 Offsets: 8023 to 8038 Dba:0x00000000 ------------------------------------------------------------------------ 2c020e0e 4855414e 4754494e 475a484f <32 bytes per line> BBED> modify /x 2c00 File: /oracle/app/oracle/oradata/orcl1123/users01.dbf (0) Block: 6451 Offsets: 8023 to 8038 Dba:0x00000000 ------------------------------------------------------------------------ 2c000e0e 4855414e 4754494e 475a484f <32 bytes per line> BBED> sum apply Check value for File 0, Block 6451: current = 0xbebc, required = 0xbebc 下面再也没有报错了 BBED> verify DBVERIFY - Verification starting FILE = /oracle/app/oracle/oradata/orcl1123/users01.dbf BLOCK = 6451 DBVERIFY - Verification complete Total Blocks Examined : 1 Total Blocks Processed (Data) : 1 Total Blocks Failing (Data) : 0 Total Blocks Processed (Index): 0 Total Blocks Failing (Index): 0 Total Blocks Empty : 0 Total Blocks Marked Corrupt : 0 Total Blocks Influx : 0 Message 531 not found; product=RDBMS; facility=BBED |