Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

999

积分

1

好友

942

主题
1#
发表于 2017-4-15 10:31:47 | 查看: 1612| 回复: 1


ORA-00600: internal error code, arguments: [3005], 是oracle一个很经典和严重的告警,以前只是听说或者其他dba朋友碰到,自己还没真正碰到
有幸自己也碰到了ORA-00600,把解决办法写出了,供遇到的同行朋友参考借鉴!
下午4点左右,开发反应无法连接数据库,查看数据库状态为mount状态,手动open时报错!

QL> select status from v$instance;

STATUS
------------
MOUNTED

SQL> alter database open;

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [3005], [1], [616], [244929], [0],
[0], [], [], [], [], [], []

查看告警日志,日志如下:
Completed: ALTER DATABASE   MOUNT
Fri Feb 22 16:00:13 2013
ALTER DATABASE OPEN
Beginning crash recovery of 1 threads
parallel recovery started with 15 processes
Started redo scan
Errors in file /export/home/oracle/diag/rdbms/trace/xxx_ora_8834.trc  (incident=78163):
ORA-00600: internal error code, arguments: [3005], [1], [616], [244929], [0], [0], [], [], [], [], [], []
Incident details in: /export/home/oracle/diag/rdbms/incident/incdir_78163/xxx_ora_8834_i78163.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Aborting crash recovery due to error 600
Errors in file /export/home/oracle/diag/rdbms/trace/xxx_ora_8834.trc:
ORA-00600: internal error code, arguments: [3005], [1], [616], [244929], [0], [0], [], [], [], [], [], []
Errors in file /export/home/oracle/diag/rdbms/trace/xxx_ora_8834.trc:
ORA-00600: internal error code, arguments: [3005], [1], [616], [244929], [0], [0], [], [], [], [], [], []
ORA-600 signalled during: ALTER DATABASE OPEN...
Dumping diagnostic data in directory=[cdmp_20130222160015], requested by (instance=1, osid=8834), summary=[incident=78163].
Fri Feb 22 16:01:12 2013
Sweep [inc][78163]: completed
Sweep [inc2][78163]: completed
Fri Feb 22 16:01:33 2013

印象中metalink上面有给出解决方法,于是------
oracle metalink  给出ORA-600   3005解决方案:

Solution

1.  Check the current state of datafiles and online redo logs

a.  Compare SCN (checkpoint_change#) from datafile headers:


select status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, count(*), fuzzy from v$datafile_header
group by status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, fuzzy;

b. with the online log files (first_change#):

col member form a60
select v1.thread#, v1.group#, member, sequence#, first_change#, archived, v1.status from v$log v1, v$logfile v2 where v1.group#=v2.group#;

NOTE: in most cases, the online redo log file will be the one with v1.status = CURRENT

2.  Run instance recovery manually

a.  Issue the command:

recover database using backup controlfile until cancel;

b.  when prompted, give it the full online redo log file name associated with the THREAD# suggested.  

c.  Oracle should return:

Log applied.
Media recovery complete.

3.  Open the database with resetlogs:

alter database open resetlogs;

3、操作过程:
SQL> set line 120
select status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, count(*), fuzzy from v$datafile_header
  2   group by status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, fuzzy;

STATUS CHECKPOINT_CHANGE# CHECKPOINT_T RESETLOGS_CHANGE# RESETLOGS_TI  COUNT(*) FUZ
------- ------------------ ------------ ----------------- ------------ ---------- ---
ONLINE   19112099 22-FEB-13    995548 10-OCT-12        35 NO
SQL> col MEMBER for a30
SQL> select v1.thread#, v1.group#, member, sequence#, first_change#, archived, v1.status from v$log v1, v$logfile v2 where v1.group#=v2.group#;

   THREAD#     GROUP# MEMBER       SEQUENCE# FIRST_CHANGE# ARC STATUS
---------- ---------- ------------------------------ ---------- ------------- --- ----------------
1     1 /ora_data/hljdx/redo01.log     611      18933923 YES INACTIVE
1     2 /ora_data/hljdx/redo02.log     612      19000743 YES INACTIVE
1     5 /ora_data/hljdx/redo05.log     615      19086681 NO  CURRENT
1     4 /ora_data/hljdx/redo04.log     614      19077923 YES INACTIVE
1     3 /ora_data/hljdx/redo03.log     613      19009581 YES INACTIVE
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 19112099 generated at 02/22/2013 14:18:10 needed for thread 1
ORA-00289: suggestion : /ora_arch/1_615_796305824.dbf
ORA-00280: change 19112099 for thread 1 is in sequence #615


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}   ------上面提示需要615号归档日志,但是615号的redo log正在CURRENT状态,还没归档,没有!直接cancel
cancel
Media recovery cancelled.
最后以resetlog方式open数据库
SQL> alter database open resetlogs;
SQL> select status from v$instance;

STATUS
------------
OPEN

至于是什么原因导致问题,也不是很清楚,出问题之前没有对数据库做任何改动或操作。HA主备进行了切换后就出现无法open故障!


PS:问题虽然解决了,但是下面这个操作主要有什么目的,请大牛们解释一下!
SQL> set line 120
select status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, count(*), fuzzy from v$datafile_header
  2   group by status,checkpoint_change#,checkpoint_time, resetlogs_change#, resetlogs_time, fuzzy;

STATUS CHECKPOINT_CHANGE# CHECKPOINT_T RESETLOGS_CHANGE# RESETLOGS_TI  COUNT(*) FUZ
------- ------------------ ------------ ----------------- ------------ ---------- ---
ONLINE   19112099 22-FEB-13    995548 10-OCT-12        35 NO
SQL> col MEMBER for a30
SQL> select v1.thread#, v1.group#, member, sequence#, first_change#, archived, v1.status from v$log v1, v$logfile v2 where v1.group#=v2.group#;

   THREAD#     GROUP# MEMBER       SEQUENCE# FIRST_CHANGE# ARC STATUS
---------- ---------- ------------------------------ ---------- ------------- --- ----------------
1     1 /ora_data/hljdx/redo01.log     611      18933923 YES INACTIVE
1     2 /ora_data/hljdx/redo02.log     612      19000743 YES INACTIVE
1     5 /ora_data/hljdx/redo05.log     615      19086681 NO  CURRENT
1     4 /ora_data/hljdx/redo04.log     614      19077923 YES INACTIVE
1     3 /ora_data/hljdx/redo03.log     613      19009581 YES INACTIVE







下载专业ORACLE数据库恢复工具PRM-DUL  For Oracle http://www.parnassusdata.com/

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638  QQ: 47079569     邮箱:service@parnassusdata.com
2#
发表于 2017-4-15 10:32:04

出问题的时候redo05.log是current,不知道是不是他出问题!

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-20 13:33 , Processed in 0.046479 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569