Welcome 微信登录

首页 / 数据库 / MySQL / ORA-600(3020) 错误解决

今天在恢复一套测试库的时候遇到了ora-600(3020)错误
SQL> recover datafile 6;
ORA-00279: change 1981277 generated at 01/03/2014 14:24:15 needed for thread 1
ORA-00289: suggestion : /opt/arch/archive_1_45_834576965.arc
ORA-00280: change 1981277 for thread 1 is in sequence #45Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto
。。。
。。。
ORA-00283: recovery session canceled due to errors
ORA-00600: internal error code, arguments: [3020], [6], [59], [25165883], [],[], [], [], [], [], [], []
ORA-10567: Redo is inconsistent with data block (file# 6, block# 59, file
offset is 483328 bytes)
ORA-10564: tablespace GOOLEN
ORA-01110: data file 6: "/opt/app/Oracle/oradata/goolen/goolen01.dbf"
ORA-10561: block type "TRANSACTION MANAGED DATA BLOCK", data object# 74195
ORA-01112: media recovery not startedalter日志报错:
Fri Jan 03 17:21:06 2014
ALTER DATABASE RECOVER  datafile 6 
Media Recovery Start
Serial Media Recovery started
ORA-279 signalled during: ALTER DATABASE RECOVER  datafile 6  ...
ALTER DATABASE RECOVER    CONTINUE DEFAULT 
Media Recovery Log /opt/arch/archive_1_45_834576965.arc
Errors in file /opt/app/oracle/diag/rdbms/goolen/goolen/trace/goolen_ora_11763.trc:
ORA-00308: cannot open archived log "/opt/arch/archive_1_44_834576965.arc"
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-10567: Redo is inconsistent with data block (file# 6, block# 59, file offset is 483328 bytes)
ORA-10564: tablespace GOOLEN
ORA-01110: data file 6: "/opt/app/oracle/oradata/goolen/goolen01.dbf"
ORA-10561: block type "TRANSACTION MANAGED DATA BLOCK", data object# 74195
Errors in file /opt/app/oracle/diag/rdbms/goolen/goolen/trace/goolen_ora_11763.trc  (incident=15025):
ORA-00600: internal error code, arguments: [3020], [6], [59], [25165883], [], [], [], [], [], [], [], []
ORA-10567: Redo is inconsistent with data block (file# 6, block# 59, file offset is 483328 bytes)
ORA-10564: tablespace GOOLEN
ORA-01110: data file 6: "/opt/app/oracle/oradata/goolen/goolen01.dbf"
ORA-10561: block type "TRANSACTION MANAGED DATA BLOCK", data object# 74195
Incident details in: /opt/app/oracle/diag/rdbms/goolen/goolen/incident/incdir_15025/goolen_ora_11763_i15025.trc
Media Recovery failed with error 600trace文件内容:
buffer tsn: 6 rdba: 0x0180003b (6/59)
scn: 0x0000.00158d60 seq: 0x01 flg: 0x04 tail: 0x8d600601
frmt: 0x02 chkval: 0xf96d type: 0x06=trans data
on-disk scn: 0x0.158d60
DUMP REDO
 Opcodes *.*
 DBAs (file#, block#):
 (6, 59) .
 SCNs: scn: 0x0000.00158d60 (1412448) thru scn: 0x0000.001e3b9c (1981340)
 Times: creation thru eternity
*Error 308 when opening Archive Log -
 /opt/arch/archive_1_44_834576965.arc
*Error is non fatal for dump - Dump will continue
*Error 308 when opening Archive Log -
 /opt/arch/archive_1_44_834576965.arc
*Error is non fatal for dump - Dump will continue
*Error 308 when opening Archive Log -
 /opt/arch/archive_1_39_834576965.arc
*Error is non fatal for dump - Dump will continue
*Error 308 when opening Archive Log -
 /opt/arch/archive_1_39_834576965.arc SQL> select segment_name, segment_type, owner
  2 from dba_extents
  3 where file_id = &file_id
  4    and &block_id between block_id and block_id + blocks - 1;
Enter value for file_id: 6
old 3:  where file_id = &file_id
new 3:  where file_id = 6
Enter value for block_id: 59
old 4: and &block_id between block_id and block_id + blocks - 1
new 4: and 59 between block_id and block_id + blocks - 1no rows selectedSQL> select *
  2  from dba_free_space
  3  where file_id = &file_id
  4  and &block_id between block_id and block_id + blocks - 1;
Enter value for file_id: 6
old 3: where file_id = &file_id
new 3: where file_id = 6
Enter value for block_id: 59
old 4: and &block_id between block_id and block_id + blocks - 1
new 4: and 59 between block_id and block_id + blocks - 1no rows selectedSQL> SELECT owner, segment_name, segment_type, partition_name
  2             FROM dba_segments
  3           WHERE header_file =&file_id
  4   and header_block=&block_id;
Enter value for file_id: 6
old 3:            WHERE header_file =&file_id
new 3:            WHERE header_file =6
Enter value for block_id: 59
old 4:    and header_block=&block_id
new 4:    and header_block=59no rows selected由于出现这个错误,恢复中断
Metalink上解释:
  This is called a "STUCK RECOVERY".
  There is an inconsistency between the information stored in the redo and the information stored in a database block being recovered
 
+++从以上信息,我们可以大概猜测,oracle在做恢复时(0x0180003b (6/59)),发现redo信息与要恢复的数据块信息不一致,导致恢复无法继续
SCNs: scn: 0x0000.00158d60 (1412448) thru scn: 0x0000.001e3b9c (1981340)由于测试库没有备份,只能损失部分数据来恢复数据库SQL> recover datafile 6 allow 1 corruption;
ORA-00279: change 1981277 generated at 01/03/2014 14:24:15 needed for thread 1
ORA-00289: suggestion : /opt/arch/archive_1_45_834576965.arc
ORA-00280: change 1981277 for thread 1 is in sequence #45Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto
ORA-00279: change 1981343 generated at 01/03/2014 14:25:15 needed for thread 1
ORA-00289: suggestion : /opt/arch/archive_1_46_834576965.arc
ORA-00280: change 1981343 for thread 1 is in sequence #46Log applied.
Media recovery complete.
SQL>
SQL> alter database datafile 6 online;
Database altered.相关阅读:Oracle ORA-01555 快照过旧 说明 http://www.linuxidc.com/Linux/2012-08/66997.htmORA-01078 和 LRM-00109 报错解决方法 http://www.linuxidc.com/Linux/2012-07/66044.htmORA-01555超长的Query Duration时间 http://www.linuxidc.com/Linux/2013-12/93901.htmORA-00471 处理方法笔记 http://www.linuxidc.com/Linux/2013-09/90017.htmORA-00314,redolog 损坏,或丢失处理方法 http://www.linuxidc.com/Linux/2013-09/90646.htmORA-00257 归档日志过大导致无法存储的解决办法 http://www.linuxidc.com/Linux/2013-09/90594.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12MySQL 5.1升级到MySQL 5.5实战笔记RAC 集群重新配置OCR和vote disk (11.2.0.1.0)相关资讯      ORA-600  ORA-600(3020) 
  • 深入分析ORA-600[2662] 错误系列一  (12/04/2015 10:25:04)
  • RMAN备份遭遇ORA-600错误  (05/13/2015 19:33:33)
  • ORA-600[13011] 错误解决一例  (11/17/2014 23:12:43)
  • ORA-600[kcbz_check_objd_typ]错误  (05/28/2015 06:04:06)
  • ORA-600[13013]处理过程  (11/20/2014 18:53:01)
  • ORA-600 [kcblasm_1]bug解决一例  (08/04/2014 20:03:23)
本文评论 查看全部评论 (0)
表情: 姓名: 字数