朋友那32位的windows 2003平台,跑了2年的oracle 10g数据库。因为操作系统中毒,系统异常关闭后启动蓝屏。
没办法,重装操作系统,重装oracle软件,挂载数据文件后,启动报错:SYSTEM01.DBF需要恢复。
查看数据库配置,非归档运行,也没有可用的数据库备份。
尝试了_allow_resetlogs_corruption,_offline_rollback_segments,_corrupt_rollback_segments,set 10513 event等多种方法,始终不能打开数据库。
设置了_allow_resetlogs_corruption后,数据库启动关键日志如下:
alert_tjserver.log
Wed Mar 20 17:21:53 2013 Errors in file d:\oracle\admin\tjserver\udump\tjserver_ora_1614.trc: ORA-00600: internal error code, arguments: [4000], [7], [], [], [], [], [], []
常规恢复都没起作用,ORA-00600 [4000],[7]在没有可用备份的情况下,一般考虑用BBED工具做修复。
整个恢复流程,基本思路如下:
1、将数据文件、控制文件、参数文件,复制到linux或Unix平台上,我这顺手就用了64位的Solaris。
2、在Solaris平台上安装同版本的Oracle软件。
3、用RMAN做数据文件的跨平台转换。
4、修改参数文件,启动实例,重建控制文件。
5、在Solaris平台上编译BBED工具,并修改数据文件。
6、修正其他错误,尝试open数据库。
7、做全库的exp导出,然后恢复到新的数据库中。
需要用的工作技能主要包括:Solaris操作系统使用、Oracle在Solaris上的安装、RMAN跨平台转换数据库、Oracle基本灾备技能、BBED工具使用、exp工具使用
第一、二步网上有很多文档,就不介绍了。
这里直接从第三步RMAN跨平台转换开始
RMAN> conn target / RMAN>run{ convert datafile '/opt/oracle/tjserver/SYSTEM01.DBF' to platform='Solaris[tm] OE (64-bit)' format='/opt/oracle/tjserver/SYSTEM01.DBF.NEW'; convert datafile '/opt/oracle/tjserver/UNDOTBS01.DBF' to platform='Solaris[tm] OE (64-bit)' format='/opt/oracle/tjserver/UNDOTBS01.DBF.NEW'; convert datafile '/opt/oracle/tjserver/SYSAUX01.DBF' to platform='Solaris[tm] OE (64-bit)' format='/opt/oracle/tjserver/SYSAUX01.DBF.NEW'; convert datafile '/opt/oracle/tjserver/USERS01.DBF' to platform='Solaris[tm] OE (64-bit)' format='/opt/oracle/tjserver/USERS01.DBF.NEW'; convert datafile '/opt/oracle/tjserver/INDEX01.DBF' to platform='Solaris[tm] OE (64-bit)' format='/opt/oracle/tjserver/INDEX01.DBF.NEW'; }
逐一转换所有文件。
第四步 修改参数文件,重建控制文件
1)修改参数文件中的*_dest路径,从原来的windows 指向新的Solaris路径
tjserver.__db_cache_size=75497472 tjserver.__java_pool_size=4194304 tjserver.__large_pool_size=4194304 tjserver.__shared_pool_size=79691776 tjserver.__streams_pool_size=0 *.audit_file_dest='/opt/oracle/admin/tjserver/adump' *.background_dump_dest='/opt/oracle/admin/tjserver/bdump' *.compatible='10.2.0.1.0' *.control_files='/opt/oracle/oradata/tjserver/control01.ctl','/opt/oracle/oradata/tjserver/control02.ctl','/opt/oracle/oradata/tjserver/control03.ctl' *.core_dump_dest='/opt/oracle/admin/tjserver/cdump' *.db_block_size=8192 *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='tjserver' *.dispatchers='(PROTOCOL=TCP) (SERVICE=tjserverXDB)' *.job_queue_processes=10 *.open_cursors=300 *.pga_aggregate_target=52428800 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.sga_target=167772160 *.undo_management='AUTO' *.undo_tablespace='UNDOTBS1' *.user_dump_dest='/opt/oracle/admin/tjserver/udump'
重建控制文件:
sql>startup mount;
sql>alter database backup controlfile to trace;
到udump目录下,找到trace文件,根据文件脚本,重建控制文件:
SQL> CREATE CONTROLFILE REUSE DATABASE "TJSERVER" RESETLOGS MAXLOGFILES 16 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292 LOGFILE GROUP 1 ( '/opt/oracle/oradata/tjserver/REDO01.LOG' ) SIZE 50M, GROUP 2 '/opt/oracle/oradata/tjserver/REDO02.LOG' SIZE 50M, GROUP 3 '/opt/oracle/oradata/tjserver/REDO03.LOG' SIZE 50M DATAFILE '/opt/oracle/oradata/tjserver/SYSTEM01.DBF.NEW', '/opt/oracle/oradata/tjserver/UNDOTBS01.DBF.NEW', '/opt/oracle/oradata/tjserver/SYSAUX01.DBF.NEW', '/opt/oracle/oradata/tjserver/USERS01.DBF.NEW', '/opt/oracle/oradata/tjserver/INDEX01.DBF.NEW' CHARACTER SET US7ASCII;
5、使用BBED工具修改数据块
这里就涉及到,要修改哪个文件?哪个数据块?多少偏移量?修改成多少?我咋知道它是对的错的呢?
这些都需要详细看日志。
打开alerttjserver.log中提示的trace文件:
d:\oracle\admin\tjserver\udump\tjserver_ora_1614.trc
在跟踪文件中,可以发现以下信息:
ksedmp: internal or fatal error ORA-00600: internal error code, arguments: [4000], [7], [], [], [], [], [], [] Current SQL statement for this session: select ctime, mtime, stime from obj$ where obj# = :1 ----- Call Stack Trace ----- calling call entry argument values in hex location type point (? means dubious value) -------------------- -------- -------------------- ---------------------------- ksedst()+23 ? 0000000000000000 00142A73C 000000000 0FFDF5830 0FFFFFD7F ksedmp()+796 ? 0000000000000000 001429231 000000000 005E1BF08 000000000 ksfdmp()+16 ? 0000000000000000 00146ACA5 000000000 0FFDF5870 0FFFFFD7F 可看到,在查询obj$表时,报出这个错误了。
SO: 3892c9e48, type: 24, owner: 389f96618, flag: INIT/-/-/0x00 (buffer) (CR) PR: 389e5acc0 FLG: 0x500000 class bit: 0 kcbbfbp: [BH: 384bfb7e0, LINK: 3892c9e88] where: kdswh02: kdsgrp, why: 0 BH (384bfb7e0) file#: 1 rdba: 0x0040007a (1/122) class: 1 ba: 384bce000 set: 3 blksize: 8192 bsi: 0 set-flg: 2 pwbcnt: 0 dbwrid: 0 obj: 18 objn: 18 tsn: 0 afn: 1 hash: [38922bf00,38922bf00] lru: [384bfb958,3892cbb68] ckptq: [NULL] fileq: [NULL] objq: [386f2dcb0,386f2dcb0] use: [3892c9e88,3892c9e88] wait: [NULL] st: XCURRENT md: SHR tch: 0 flags: LRBA: [0x0.0.0] HSCN: [0xffff.ffffffff] HSUB: [65535] Using State Objects ---------------------------------------- SO: 3892c9e48, type: 24, owner: 389f96618, flag: INIT/-/-/0x00 (buffer) (CR) PR: 389e5acc0 FLG: 0x500000 class bit: 0 kcbbfbp: [BH: 384bfb7e0, LINK: 3892c9e88] where: kdswh02: kdsgrp, why: 0 buffer tsn: 0 rdba: 0x0040007a (1/122) scn: 0x0000.03b1926f seq: 0x01 flg: 0x06 tail: 0x926f0601 frmt: 0x02 chkval: 0xa8ac type: 0x06=trans data 可以看到,出错位置在第一个数据文件的122个block上。
Block header dump: 0x0040007a Object id on Block? Y seg/obj: 0x12 csc: 0x00.3b1926e itc: 1 flg: - typ: 1 - DATA fsl: 0 fnx: 0x0 ver: 0x01 Itl Xid Uba Flag Lck Scn/Fsc 0x01 0x0007.00c.00007ec1 0x00800031.451f.01 --U- 1 fsc 0x0000.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 fseo=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号块上,有一个未提交事务。
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的操作:
$ 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_kcbh @16 ub2 spare3_kcbh @18 struct ktbbh, 48 bytes @20 ub1 ktbbhtyp @20 union ktbbhsid, 4 bytes @24 struct ktbbhcsc, 8 bytes @28 b2 ktbbhict @36 ub1 ktbbhflg @38 ub1 ktbbhfsl @39 ub4 ktbbhfnx @40 struct ktbbhitl[1], 24 bytes @44 struct kdbh, 14 bytes @68 ub1 kdbhflag @68 b1 kdbhntab @69 b2 kdbhnrow @70 sb2 kdbhfrre @72 sb2 kdbhfsbo @74 sb2 kdbhfseo @76 b2 kdbhavsp @78 b2 kdbhtosp @80 struct kdbt[1], 4 bytes @82 b2 kdbtoffs @82 b2 kdbtnrow @84 sb2 kdbr[101] @86 ub1 freespace[861] @288 ub1 rowdata[7039] @1149 ub4 tailchk @8188 BBED> p ktbbh struct ktbbh, 48 bytes @20 ub1 ktbbhtyp @20 0x01 (KDDBTDATA) union ktbbhsid, 4 bytes @24 ub4 ktbbhsg1 @24 0x00000012 ub4 ktbbhod1 @24 0x00000012 struct ktbbhcsc, 8 bytes @28 ub4 kscnbas @28 0x00051fc3 ub2 kscnwrp @32 0x0000 b2 ktbbhict @36 1 ub1 ktbbhflg @38 0x02 (NONE) ub1 ktbbhfsl @39 0x00 ub4 ktbbhfnx @40 0x00000000 struct ktbbhitl[0], 24 bytes @44 struct ktbitxid, 8 bytes @44 ub2 kxidusn @44 0x0005 ub2 kxidslt @46 0x000b ub4 kxidsqn @48 0x000000c1 struct ktbituba, 8 bytes @52 ub4 kubadba @52 0x008003a3 ub2 kubaseq @56 0x006f ub1 kubarec @58 0x41 ub2 ktbitflg @60 0x8001 (KTBFCOM) union _ktbitun, 2 bytes @62 b2 _ktbitfsc @62 0 ub2 _ktbitwrp @62 0x0000 ub4 ktbitbas @64 0x00051fc4 BBED> set offset 60 OFFSET 60 BBED> dump File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1) Block: 122 Offsets: 60 to 571 Dba:0x0040007a ------------------------------------------------------------------------ 01200000 6f92b103 00016c00 ffffea00 53046903 69030000 6c007b1f 3a1ffe1e c11e801e 401ef81d b81d771d 291dec1c b01c681c 271ce71b a71b681b 271beb1a af1a701a 2f1af319 b4197319 3719f118 ae186718 2718e717 a7176617 2b17e316 a2166116 1f16e315 a3156615 2915e914 a8146c14 2c14ec13 b0137313 3213f112 b0126f12 2f12ee11 a0116011 2111de10 9b105f10 2310e60f a30f620f 1d0fd80e 9c0e5a0e 140ed30d 940d540d 130dd30c 930c570c 170cd90b 980b580b 150bd00a 8b0a460a 010ac109 81094109 0109c008 7d083e08 0108bc07 7e074207 fc06bb06 74063206 f005aa05 64051e05 d8049504 53040000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 <32 bytes per line> BBED> set offset 61 OFFSET 61 BBED> modify /x 0x80 File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1) Block: 122 Offsets: 61 to 572 Dba:0x0040007a ------------------------------------------------------------------------ 8000006f 92b10300 016c00ff ffea0053 04690369 0300006c 007b1f3a 1ffe1ec1 1e801e40 1ef81db8 1d771d29 1dec1cb0 1c681c27 1ce71ba7 1b681b27 1beb1aaf 1a701a2f 1af319b4 19731937 19f118ae 18671827 18e717a7 1766172b 17e316a2 1661161f 16e315a3 15661529 15e914a8 146c142c 14ec13b0 13731332 13f112b0 126f122f 12ee11a0 11601121 11de109b 105f1023 10e60fa3 0f620f1d 0fd80e9c 0e5a0e14 0ed30d94 0d540d13 0dd30c93 0c570c17 0cd90b98 0b580b15 0bd00a8b 0a460a01 0ac10981 09410901 09c0087d 083e0801 08bc077e 074207fc 06bb0674 063206f0 05aa0564 051e05d8 04950453 04000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 <32 bytes per line> BBED> set offset 60 OFFSET 60 BBED> dump File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1) Block: 122 Offsets: 60 to 571 Dba:0x0040007a ------------------------------------------------------------------------ 01800000 6f92b103 00016c00 ffffea00 53046903 69030000 6c007b1f 3a1ffe1e c11e801e 401ef81d b81d771d 291dec1c b01c681c 271ce71b a71b681b 271beb1a af1a701a 2f1af319 b4197319 3719f118 ae186718 2718e717 a7176617 2b17e316 a2166116 1f16e315 a3156615 2915e914 a8146c14 2c14ec13 b0137313 3213f112 b0126f12 2f12ee11 a0116011 2111de10 9b105f10 2310e60f a30f620f 1d0fd80e 9c0e5a0e 140ed30d 940d540d 130dd30c 930c570c 170cd90b 980b580b 150bd00a 8b0a460a 010ac109 81094109 0109c008 7d083e08 0108bc07 7e074207 fc06bb06 74063206 f005aa05 64051e05 d8049504 53040000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 <32 bytes per line> BBED> set offset 6454 OFFSET 6454 BBED> dump File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1) Block: 122 Offsets: 6454 to 6965 Dba:0x0040007a ------------------------------------------------------------------------ 011102c1 0204c30b 34070180 0c5f4e45 58545f4f 424a4543 5402c102 ff018007 7869081e 0e331807 78700919 0c103b07 7869081e 0e331801 80ffff01 80ff0180 04c30738 242c0011 02c10602 c1030180 04434c55 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0e3319 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c12402 c1240180 07495f55 4e444f32 02c105ff 02c10207 7869081e 0e331a07 7869081e 0e331a07 7869081e 0e331a02 c102ffff 0180ff01 8004c307 38242c00 1102c12c 02c12c01 8005495f 54533102 c105ff02 c1020778 69081e0e 331a0778 69081e0e 331a0778 69081e0e 331a02c1 02ffff01 80ff0180 04c30738 242c0011 02c11602 c1030180 04434f4c 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0f3137 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c12b02 c12b0180 07495f46 494c4532 02c105ff 02c10207 7869081e 0e331a07 7869081e 0e331a07 7869081e 0e331a02 c102ffff 0180ff01 8004c307 38242c00 1102c107 02c10701 8005435f 54532302 c106ff02 c1040778 69081e0e 33190778 69081e0e 33190778 69081e0e 331902c1 02ffff01 80ff0180 04c30738 242c0011 02c10f02 c1090180 04534547 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0e3319 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c11402 <32 bytes per line> BBED> modify /x 0x00 File: /opt/oracle/oradata/tjserver/SYSTEM01.DBF (1) Block: 122 Offsets: 6454 to 6965 Dba:0x0040007a ------------------------------------------------------------------------ 001102c1 0204c30b 34070180 0c5f4e45 58545f4f 424a4543 5402c102 ff018007 7869081e 0e331807 78700919 0c103b07 7869081e 0e331801 80ffff01 80ff0180 04c30738 242c0011 02c10602 c1030180 04434c55 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0e3319 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c12402 c1240180 07495f55 4e444f32 02c105ff 02c10207 7869081e 0e331a07 7869081e 0e331a07 7869081e 0e331a02 c102ffff 0180ff01 8004c307 38242c00 1102c12c 02c12c01 8005495f 54533102 c105ff02 c1020778 69081e0e 331a0778 69081e0e 331a0778 69081e0e 331a02c1 02ffff01 80ff0180 04c30738 242c0011 02c11602 c1030180 04434f4c 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0f3137 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c12b02 c12b0180 07495f46 494c4532 02c105ff 02c10207 7869081e 0e331a07 7869081e 0e331a07 7869081e 0e331a02 c102ffff 0180ff01 8004c307 38242c00 1102c107 02c10701 8005435f 54532302 c106ff02 c1040778 69081e0e 33190778 69081e0e 33190778 69081e0e 331902c1 02ffff01 80ff0180 04c30738 242c0011 02c10f02 c1090180 04534547 2402c102 ff02c103 07786908 1e0e3319 07786908 1e0e3319 07786908 1e0e3319 02c102ff ff0180ff 018002c1 022c0011 02c11402 <32 bytes per line> BBED> sum apply Check value for File 1, Block 122: current = 0x08ad, required = 0x08ad
6、修改其他错误,open数据
库数据块修改完成后,添加参数,再次尝试open数据库参数文件修改如下:
tjserver.__db_cache_size=75497472 tjserver.__java_pool_size=4194304 tjserver.__large_pool_size=4194304 tjserver.__shared_pool_size=79691776 tjserver.__streams_pool_size=0 *.audit_file_dest='/opt/oracle/admin/tjserver/adump' *.background_dump_dest='/opt/oracle/admin/tjserver/bdump' *.compatible='10.2.0.1.0' *.control_files='/opt/oracle/oradata/tjserver/control01.ctl','/opt/oracle/oradata/tjserver/control02.ctl','/opt/oracle/oradata/tjserver/control03.ctl' *.core_dump_dest='/opt/oracle/admin/tjserver/cdump' *.db_block_size=8192 *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='tjserver' *.dispatchers='(PROTOCOL=TCP) (SERVICE=tjserverXDB)' *.job_queue_processes=10 *.open_cursors=300 *.pga_aggregate_target=52428800 *.processes=150 *.remote_login_passwordfile='EXCLUSIVE' *.sga_target=167772160 *.undo_management='AUTO' *.undo_tablespace='UNDOTBS1' *.user_dump_dest='/opt/oracle/admin/tjserver/udump' *._allow_resetlogs_corruption='true' *._allow_error_simulation=true *.event='10513 trace name context forever,level 2'
sql> alter database open;
ORA-1092 signalled during: alter database open...
open失败,再次查看alerttjserver.log:
Thu Mar 21 23:00:06 2013 Errors in file /opt/oracle/admin/tjserver/udump/tjserver_ora_1613.trc: ORA-00600: internal error code, arguments: [2662], [0], [61969008], [0], [65698991], [4194313], [], [] Thu Mar 21 23:00:07 2013 Errors in file /opt/oracle/admin/tjserver/udump/tjserver_ora_1613.trc: ORA-00600: internal error code, arguments: [2662], [0], [61969008], [0], [65698991], [4194313], [], [] Thu Mar 21 23:00:07 2013 Error 600 happened during db open, shutting down database USER: terminating instance due to error 600 Instance terminated by USER, pid = 1613 ORA-1092 signalled during: alter database open...
出现了ORA-00600 [2662]错误,需要调整下系统SCN:
sql>startup mount;
sql>alter session set events '10015 trace name adjust_scn level 1';
sql>alter database open;
至此数据库就OPEN起来了,不过使用PL SQL等工具,仍然不断有错误抛出来。
7、做全库的exp导出,然后恢复到新的数据库中。
先考虑做个exp全备恢复到其他机器上。
结果exp工具也报ORA-06553错误,执行下以下脚本:
sql> alter package standard compile;
sql>alter procedure dbms_application_info compile;
再执行exp就可以了。
cmd>set anls_lang=american_america.us7ascii
cmd>exp system@tjserver file=..... log=..... full=y buffer=100024024 feedback=10000