文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络程序开发OracleORACLE回滚段表空间数据文件丢失或损坏处理方法
精品推荐
特别推荐
·ORACLE应用中常见的傻瓜问题1000问 (二)
·自动清除statspack所产生的snapshot旧记录
·MPlayer常见问题解答
·常用数据库比较
·ODBC API常用函数诠释
·提高ORACLE数据库的查询统计速度
·细化解析:Oracle使用的hints调整机制
·解析Oracle/Oracle Forms 的多用途代码
·从Oracle的FORM中调用REPORT的实用技巧
·Oracle SQL精妙SQL语句讲解
热点TOP10
·ORACLE常用傻瓜问题1000问
·自动清除statspack所产生的snapshot旧记录
·Oracle DBMS_REPAIR包修复损坏数据块
·ORA-01555 快照过旧
·ORACLE应用中常见的傻瓜问题1000问 (二)
·DBMS_REPAIR包修复损坏数据块
·VMware下RedHat安装Oracle 9i RAC全攻略
·我的oracle笔记四(DBA管理)
·Oracle SQL精妙SQL语句讲解
·Oracle客户端文件打包

ORACLE回滚段表空间数据文件丢失或损坏处理方法

日期:2007年7月8日 作者: 查看:[大字体 中字体 小字体]


问题描述:
这是一个回滚段表空间数据文件丢失或损坏的情景,这时oracle不能识别相应的数据文件。当你试图startup数据文件时会报ORA-1157,ORA-1110,并且可能会伴随着标识操作系统级别的错误,比如ORA-7360。当你试图以shutdown normal或shutdown immediate模式关闭数据库时会导至ORA-1116,ORA-1110,并可能伴随标识操作系统级别的错误,比如ORA-7368,有时以正常方式shutdown数据库根本shutdown不下来。

警告:
文章中所提及的步骤是供oracle的全球技术支持使用的。特别是步骤6中的_corrupted_rollback_segments参数,使用后需要重建数据库,在使用这个参前请观察一下所有其它的选项。

解决方法解释:

如下的解决方法取于检测问题出现时数据库所处于状态:

I. 数据库是处于关闭状态的。
试图打开数据库时报ORA-1157和ORA-1110错误,这时的解决方法取于数据库是否是正常shutdown的(使用normal或immediate选项。

I.A.数据库是正常shutdown的

如果数据数据库是正常shutdown的,最简单的解决方法是以offline drop选项删除丢失或损坏的数据文件,以restriceted模式打个数据库,删除并重建这个数据文件所属的那个回滚表空间。如果数据库是以shutdown abort或自己崩溃掉的则不要遵循这个过程。

步骤如下:

1、确认数据库是正常shutdown的。可以检查alter.log这个文件,定位到最后几行看是否可以看到如下的信息:
  "alter database  dismount
   Completed: alter database  dismount"

这当然也包括以正常方式shutdown,接然试图启动数据库确失败的状况。如果最近一次你是以shutdown abort方式关闭数据库的或数据库是自己crashed掉的,你应用使用下面的I.B的方法。

2、在init<sid>.ora中把属于丢失数据文件的回滚段从ROLLBACK_SEGMENTS参数中去掉。如果你不能确信是哪个回滚段,可以简单的把ROLLBACK_SEGMENTS这个参数注释掉。

3、以restricted模式mount数据库
  STARTUP RESTRICT MOUNT;
 
4、Offline drop丢失或损坏的那个数据文件。
  ALTER DATABASE DATAFILE '<full_path_file_name>' OFFLINE DROP;
   
5、打开数据库
  ALTER DATABASE OPEN;
  如果返回"Statement processed"这条信息,转到第7步.
  如果得到ORA-604,ORA-376,和ORA-1110错误,转到第6步。

6、因为打开数据库失败,shutdown掉数据库并且编辑int<SID>.ora这个文件。注释掉ROLLBACK_SEGMENTS这个参数,并且在init<SID>.ora文件中加入如下一行:
  _corrupted_rollback_segments = (<rollback1>,...,<rollbackN>)
  这个参数应当包含ROLLBACK_SEGMENTS中所有的回滚段。

需要注意的是这个参数只能在指定的情况下或在oracle的全球持术支持的指导下才应使用,然后以restricted模式打开数据库:
 

  STARTUP RESTRICT

[1] [2] [3] [4] 下一页 




上一篇:通过sqlserver的日志来进行基于时间点的恢复

下一篇:Access新手获取帮助的几个途径

相关文章:
·破解QQ空间相册密码
·QQ等级快速升方法
·电脑提速的新方法
·刘亦菲QQ空间
·盗QQ号码方法大全
·压缩文件的密码破解
·电脑维修的基本原则和方法
·教你如何复制别人的QQ空间
·QQ密码本地破解的原理和方法
·轻松做画家!用Photoshop把照片处理成逼真的素描画
相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot