这篇文章主要介绍oracle非归档模式,没有备份,直接拔电导致Undo损坏怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!非归档模式,没有备份,直接拔电导致Undo损坏
启动数据库,检查故障信息
SQL> conn / as sysdba
SQL> startup pfile=’ ‘;
报错,ORA-03113:end-of-file on communucation channel
查看alert log,发现文件2发生错误,导致600错误
先查看文件2的名字
SQL> conn / as sysdba
SQL> startup mount pfile=”;
SQL> select file#,status,name from v$datafile;
查看可知文件2是undo数据文件,查看资料,undotbs损坏时可采用隐含参数临时启动数据库,然后进行修复
修改init文件,加入
._allow_rese免费主机域名tlogs_corruption=true(允许在数据文件SCN不一致的情况下启动数据库)
._corrupted_rollback_segments=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,
_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$,_SYSSMU11$) 允许在rollback segments损坏的情况下启动数据库
SQL> shutdown abort;
SQL> startup pfile=”;
启动成功,查看当前的rollback segments
SQL> select segment_name,stat免费主机域名us from dba_rollback_segs;新建一个重做表空间undo
SQL> create undo tablespace undo datafile ” size 50M reuse autoextend on;
SQL> select segment_name,status from dba_rollback_segs;
修改系统默认的Undo段
SQL> alter system set undo_tablespace=undo;删除损坏的undotbs1表空间
SQL> alter tablespace undotbs1 offline normal;
SQL> drop tablespace undotbs1 including contents and datafiles;
SQL> select from v$recover_file;
无数据
SQL> shutdown immediate;
修改参数文件,注释掉刚才添加的参数
#._allow_resetlogs_corruption=true(允许在数据文件SCN不一致的情况下启动数据库)
#*._corrupted_rollback_segments=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,
_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$,_SYSSMU11$) 允许在rollback
启动数据库:
SQL> startup pfile=”;以上是“oracle非归档模式,没有备份,直接拔电导致Undo损坏怎么办”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注云技术行业资讯频道!
相关推荐: Oracle 11g系统自动收集统计信息的知识有哪些
这篇文章主要讲解了“Oracle 11g系统自动收集统计信息的知识有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle 11g系统自动收集统计信息的知识有哪些”吧! 在11g之前,当表的数据量修改超…