ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 当前日志损坏ORA-00600: [2662], ORA-00600: [4193]

当前日志损坏ORA-00600: [2662], ORA-00600: [4193]

原创 Linux操作系统 作者:dppass2 时间:2010-09-20 14:28:59 0 删除 编辑

SQL> select max(indate),sysdate from be;

MAX(INDATE)         SYSDATE
------------------- -------------------
2010-09-20 14:26:18 2010-09-20 14:26:18

SQL> select max(indate),sysdate from be;

MAX(INDATE)         SYSDATE
------------------- -------------------
2010-09-20 14:26:19 2010-09-20 14:26:20

SQL> alter system switch logfile;

系统已更改。

SQL> select max(indate),sysdate from be;

MAX(INDATE)         SYSDATE
------------------- -------------------
2010-09-20 14:26:31 2010-09-20 14:26:32

 

SQL> conn / as sysdba
已连接。
SQL> shutdown abort;
ORACLE 例程已经关闭。

Mon Sep 20 14:26:28 2010 #日志切换时间
Thread 1 advanced to log sequence 6
  Current log# 3 seq# 6 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LOG

Mon Sep 20 14:26:54 2010 #宕机时间
Shutting down instance (abort)
License high water mark = 4
Mon Sep 20 14:27:05 2010
Instance terminated by USER, pid = 5264

 

 

 

Mon Sep 20 15:13:55 2010 第二次试验的日志切换时间
Thread 1 advanced to log sequence 2
  Current log# 1 seq# 2 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO01.LOG
Thread 1 advanced to log sequence 3
  Current log# 2 seq# 3 mem# 0: E:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO02.LOG
Mon Sep 20 15:20:10 2010第二次宕机时间
Shutting down instance (abort)
License high water mark = 4
Instance terminated by USER, pid = 5152

第二次试验时 未找到需要的归档日志(需要的不存在)结果打开时报错

主要处理了两个错误

1。scn不一致(由于使用了隐含参数_ALLOW_RESETLOGS_CORRUPTION 并且恢复时使用了recover database until cancel;

alter system set "_allow_resetlogs_corruption"=true scope=spfile;

Mon Sep 20 15:23:59 2010
Errors in file e:\oracle\product\10.2.0\admin\test\udump\test_ora_4996.trc:
ORA-00600: 鍐呴儴閿欒?浠g爜, 鍙傛暟: [2662], [0], [1455087], [0], [1455747], [8388617], [], []

这个错误是说block的scn比当前的scn大,可以用bbed工具查看,也可以用下面的方法:向前调一下scn

按http://www.eygle.com/archives/2005/10/ora_600_2662_error.html

执行 alter session set events 'IMMEDIATE trace name ADJUST_SCN level 1';

最后用recover database 做完全恢复,再 alter database open 报下一个错误

ORA-00600: [4193]

将 alter system set undo_management=manual scope=spfile;


 

最终打开数据库

SQL> select max(indate) from scott.be;

MAX(INDATE)
-------------------
2010-09-20 15:18:31

打开后执行ddl还会报错ORA-00600: [4193]

删除原undo表空间并将undo_management改回auto 后正常

alter system set undo_management=auto scope=spfile;

alter system set undo_tablespace=undo2 scope=spfile;

shutdown immediate;

startup;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16572356/viewspace-674509/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 抄一篇update文章
请登录后发表评论 登录
全部评论

注册时间:2008-11-26

  • 博文量
    39
  • 访问量
    81986