这几天网上恶耗不断, 昨天有人问我这个问题, 我认为这样的情况有很大的运气成份在里面, 不一定能open resetlogs的. 已有工程师在那他那儿试了以下步骤了.
1, 直接open resetlogs报, ora-600 [2662]2, 用(Event 10015)ADJUST_SCN (在eygle.com上查一下)调整数据库的SCN.3, 第二步的open resetlogs产生了以下错误信息*** 2006-01-22 02:58:54.086
ksedmp: internal or fatal error
ORA-00600: internal ..., arguments: [4194], [39], [59], ...
Current SQL statement for this session:
update lob$ set retention = :1 where retention >= 0
----- Call Stack Trace -----
4, 我所知道的最后一步能试的是加上_offline_rollback_segments试试
上面的步骤在current log损坏时一般是有用的, 不过现在是人为删除了, 这样activate log部份丢失的很多, 这时就不知道有没有问题, 下午shutdown abort后删除所有的log试试.
我将我笔记本上的一个库(Oracle 10.2)先shutdown abort, 然后移走所有的online log, 发完不完全恢复命讼后, 在参数中加了"_allow_resetlogs_corruption=true"之后, 就能起来了, 的确报了很多的ORA-600 [2662]错误, 生成了很多的Trc文件, 不过在所有的文件中找不到"update lob$"语句, 要重现这种错看来是很难, 有点运气的成份在内. 打开之后还不能正常关闭, 关闭时出ora-3113错误, 总之停个删除log的人真的是太历害了.
估计那个库只有用DUL/AUL去恢复了, 可惜AUL还不太支持LOB类型.
留言 (1)
这是很早以前的老贴.
Posted by anysql | Aug 17, 2006 11:48 PM