Oracle数据库表空间恢复方案

文章作者 100test 发表时间 2007:09:11 12:27:58
来源 100Test.Com百考试题网


一、 用户表空间

错误: 在启动数据库时出现ORA-01157,ORA-01110或操作系统级错误例如ORA-07360,在关闭数据库(使用shutdown normal或shutdown immediate) 时将导致错误ORA -01116,ORA-01110以及操作系统级错误ORA-07368

解决,以下有两种解决方案:

1.用户的表空间可以被轻易地重建

即最近导出的对象是可用的或表空间中的对象可以被轻易地重建等.在这种情况下,最简单的方法是offline并删除该数据文件,删除表空间并重建表空间以及所有的对象.

svrmgrl> startup mount

svrmgrl> alter database datafile filename offline 0drop.

svrmgrl> alter database open.

svrmgrl> 0drop tablespace tablespace_name including contents.

重建表空间及所有对象.

2.用户的表空间不能够被轻易地重建

在大多数情况下,重建表空间是不可能及太辛苦的工作.方法是倒备份及做介质恢复.如果您的系统运行在NOARCHIVELOG模式下,则只有丢失的数据。在online redo log中方可被恢复,步骤如下:

1)Restore the lost datafile from a backup

2)svrmgrl> startup mount

3)svrmgrl> 0select v1.group#,member,sequence#,first_change#

> from v$log v1,v$logfile v2

> where v1.group#=v2.group#.

4)如果数据库运行在NOARCHIVELOG模式下则:

svrmgrl> 0select file#,change# from v$recover_file.

如果 CHANGE# 大于最小的FIRST_CHANGE#则数据文件可以被恢复。

如果 CHANGE# 小于最小的FIRST_CHANGE#则数据文件不可恢复。 恢复最近一次的全备份或采用方案一

5)svrmgrl> recover datafile filename.

6)确认恢复成功

7)svrmgrl> alter database open resetlogs.

3.只读表空间无需做介质恢复,只要将备份恢复即可.唯一的例外是:

表空间在最后一次备份后被改为read-write 模式

表空间在最后一次备份后被改为read-only 模式

在这种情况下,均需进行介质恢复

二、 临时表空间

临时表空间并不包含真正的数据,恢复的方法是删除临时表空间并重建即可.



相关文章


Windows下Oracle9i数据库文件的自动备份
Oracle数据库系统修复多个安全漏洞列表
轻松了解支持网格计算的数据库技术RAC
轻松掌握如何禁用Oracle数据库的XDB
Oracle数据库表空间恢复方案
Oracle10g中的current_scn是如何计算的
实例解析:工作中遇到的Oracle故障分析
细化解析:物理备库也可以read_write
11g的新特性:SQLPlanManagement( M)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛