windows32位平台数据库宕机不能open怎么办(三)

2014-11-24 08:51:19 · 作者: · 浏览: 12
000.03b1926f
data_block_dump,data header at 0x384bce044
===============
tsiz: 0x1fb8
hsiz: 0xea
pbl: 0x384bce044
bdba: 0x0040007a
76543210
flag=--------
ntab=1
nrow=108
frre=-1
fsbo=0xea
f seo=0x453
avsp=0x369
tosp=0x369
0xe:pti[0] nrow=108 offs=0
0x12:pri[0] offs=0x1f7b
0x14:pri[1] offs=0x1f3a
0x16:pri[2] offs=0x1efe
0x18:pri[3] offs=0x1ec1
0x1a:pri[4] offs=0x1e80
0x1c:pri[5] offs=0x1e40
0x1e:pri[6] offs=0x1df8
可以看到,在第122号块上,有一个未提交事务。
[plain]
tab 0, row 26, @0x18f1
tl: 70 fb: --H-FL-- lb: 0x1 cc: 17
col 0: [ 2] c1 02
col 1: [ 4] c3 0b 34 07
col 2: [ 1] 80
col 3: [12] 5f 4e 45 58 54 5f 4f 42 4a 45 43 54
col 4: [ 2] c1 02
col 5: *NULL*
col 6: [ 1] 80
col 7: [ 7] 78 69 08 1e 0e 33 18
col 8: [ 7] 78 70 09 19 0c 10 3b
col 9: [ 7] 78 69 08 1e 0e 33 18
col 10: [ 1] 80
col 11: *NULL*
col 12: *NULL*
col 13: [ 1] 80
col 14: *NULL*
col 15: [ 1] 80
col 16: [ 4] c3 07 38 24
tab 0, row 27, @0x18ae
tl: 67 fb: --H-FL-- lb: 0x0 cc: 17
col 0: [ 2] c1 18
col 1: [ 2] c1 18
col 2: [ 1] 80
col 3: [11] 50 52 4f 58 59 5
可以看到在第26行的事务标记上,有活动事务。
总结起来,就是第1号文件的122数据块,table 0,第26行有一个未提交事务。
用BBED修改的话,需要修改两个位置:1、修改数据块的事务描述区,
清除事务标记。2、修改数据区第26行的事务标记。
看看BBED的操作:
[plain]
$ bbed parfile=/opt/oracle/test/bbedfile
password:blockedit
BBED> set block 122
BLOCK# 122
BBED> show
FILE# 1
BLOCK# 122
OFFSET 0
DBA 0x0040007a (4194427 1,122)
FILENAME /opt/oracle/oradata/tjserver/SYSTEM01.DBF
BIFILE bifile.bbd
LISTFILE /opt/oracle/test/bbedfile
BLOCKSIZE 8192
MODE Edit
EDIT Unrecoverable
IBASE Dec
OBASE Dec
WIDTH 80
COUNT 512
LOGFILE log.bbd
SPOOL No
BBED> map
File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1)
Block: 122 Dba:0x0040007a
------------------------------------------------------------
KTB Data Block (Table/Cluster)
struct kcbh, 20 bytes @0
struct ktbbh, 48 bytes @20
struct kdbh, 14 bytes @68
struct kdbt[1], 4 bytes @82
sb2 kdbr[101] @86
ub1 freespace[861] @288
ub1 rowdata[7039] @1149
ub4 tailchk @8188
BBED> map /v
File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1)
Block: 122 Dba:0x0040007a
------------------------------------------------------------
KTB Data Block (Table/Cluster)
struct kcbh, 20 bytes @0
ub1 type_kcbh @0
ub1 frmt_kcbh @1
ub1 spare1_kcbh @2
ub1 spare2_kcbh @3
ub4 rdba_kcbh @4
ub4 bas_kcbh @8
ub2 wrp_kcbh @12
ub1 seq_kcbh @14
ub1 flg_kcbh @15
ub2 chkval_