作试验把数据库数据搞得不一致了
打不开 没办法 提示需要介质恢复
只好用隐含参数忽略数据库的一致性打开_allow_restlogs_corruption=true
Thu Aug 02 11:14:52 2007
Errors in file c:oracleproduct10.2.0adminfoxconn_testudumpfoxconn_ora_2996.trc:
ORA-00704: ??摰????雿平憭望?
ORA-00704: ??摰????雿平憭望?
ORA-00600: ?折?航炊隞?Ⅳ, 撘??: [4000], [2], [], [], [], [], [], []
报ORA-600 上METALINK查一下是回滚段坏了
刚好看网上强人写的文章 和我状况相似 只是 别人报的是 有点不同不过也是回滚段坏了 我发现隐含参数打开 报错 喜欢坏回滚段
但是 我不知道我回滚段什么名称 有几个 所以不管 全部标上
修改PFILE文件将下面这个隐含参数加到文件中去:
._corrupted_rollback_segments='_SYSSMU1$','_SYSSMU2$','_SYSSMU3$','_SYSSMU4$','_SYSSMU5$','_SYSSMU6$','_SYSSMU7$','_SYSSMU8$','_SYSSMU9$','_SYSSMU10$'
然后
startup
数据库竟然打开了 感谢上帝 佛祖 3清道尊
然后另外建立各回顾表空间
create undo tablespace undotbs2 datafile ‘oradatacgnetundotbs2.dbf' size 500m;
alter system set undo_tablespace=undotbs2;
alter system set undo_tablespace=undotbs2;
drop tablespace undotbs1;
3、修改参数文件,变更undo表空间,并取消_corrupted_rollback_segments设置:
*.undo_tablespace='UNDOTBS2'
;
参考的文章
这个是我处理过的一个故障,参考
开始阶段
SQL> startup
ORACLE instance started.
Total System Global Area 608174080 bytes
Fixed Size 1220820 bytes
Variable Size 218107692 bytes
Database Buffers 381681664 bytes
Redo Buffers 7163904 bytes
ORA-00214: control file '/data/oradata/cgnet/control01.ctl' version 668
inconsistent with file '/data/oradata/cgnet/control02.ctl' version 597
解决办法
MV control02.ctl control03.ctl /data/oradata/
cp control01.ctl control02.ctl
cp control01.ctl control03.ctl
第二个阶段
AUX表空间报错
方法:recover database until cancel
auto
recover database until cancel
cancel
第三个阶段
出现
ORA-01110: data file : '/data/oradata/earth/system01.dbf'
警告日志中出现
ORA-00600: internal error code, arguments: [2662], [0], [1559989], [0], [1568290], [8388610], [],[]
此处参考EYGLE的文章
首先修改参数文件加入
_allow_resetlogs_corruption=TRUE
startup mount pfile='/or/oracle/product/10.2.0/dbs/initcgnet.ora'
alter session set events 'IMMEDIATE trace name ADJUST_SCN level 1';
alter session set events 'IMMEDIATE trace name ADJUST_SCN level 1';
这里我执行了2遍
注:level 1为增进SCN 10亿 (1 billion) (1024*1024*1024),通常Level 1已经足够。也可以根据实际情况适当调整。
去掉参数文件中的刚刚添加的内容。
最后一个阶段
startup
出现
ORA-00603: ORACLE server session terminated by fatal error
后台错误中发现是UNDO的问题
ORA-00600: internal error code, arguments: [4194], [98], [75], [], [], [], [], []
解决办法
1、通过错误信息可以确定当前回滚段是1-10,所以修改PFILE文件将下面这个隐含参数加到文件中去:
._corrupted_rollback_segments='_SYSSMU1$','_SYSSMU2$','_SYSSMU3$','_SYSSMU4$','_SYSSMU5$','_SYSSMU6$','_SYSSMU7$','_SYSSMU8$','_SYSSMU9$','_SYSSMU10$'
STARTUP PFILE=’XXXX’
可以看到数据库已经正常启动
2、create undo tablespace undotbs2 datafile 'F:dataoradatacgnetundotbs2.dbf' size 500m;
alter system set undo_tablespace=undotbs2;
drop tablespace undotbs1;
3、修改参数文件,变更undo表空间,并取消_corrupted_rollback_segments设置:
*.undo_tablespace='UNDOTBS2'
4、startup pfile='/or/oracle/product/10.2.0/dbs/initcgnet.ora'
create spfile from pfile;
shutdown immediate
statup
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/92530/viewspace-128030/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/92530/viewspace-128030/