ORACLE表空间恢复方案

原创 2008年10月02日 13:42:00
一、 用户表空间
错误: 在启动数据库时出现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 drop;
svrmgrl> alter database open;
svrmgrl> drop tablespace tablespace_name including contents;
重建表空间及所有对象.
2.用户的表空间不能够被轻易地重建
在大多数情况下,重建表空间是不可能及太辛苦的工作.方法是倒备份及做介质恢复.如果您的系统运行在NOARCHIVELOG模式下,则只有丢失的数据。在online redo log中方可被恢复,步骤如下:
1)Restore the lost datafile from a backup
2)svrmgrl> startup mount
3)svrmgrl> select v1.group#,member,sequence#,first_change#
> from v$log v1,v$logfile v2
> where v1.group#=v2.group#;
4)如果数据库运行在NOARCHIVELOG模式下则:
svrmgrl> select 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 模式
在这种情况下,均需进行介质恢复
二、 临时表空间
临时表空间并不包含真正的数据,恢复的方法是删除临时表空间并重建即可.
三、 系统表空间
如果备份不可用,则只能采用重建数据库的方法
四、 回滚表空间
有两种情况:
1、数据库已经完全关闭(使用shutdown immediate或shutdown命令)
1) 确认数据库完全关闭
2) 修改init.ora文件,注释"rollback-segment"
3) svrmgrl> startup restrict mount
4) svrmgrl> alter database datafile filename offline drop;
5) svrmgrl> alter database open;
基于出现的结果:
"statement processed" 转(7)
"ORA-00604,ORA-00376,ORA-01110"转(6)
6) svrmgrl> shutdown immediate
修改init.ora文件,增加如下一行:
_corrupted_rollback_segments = (,...)
svrmgrl> startup restrict
7) svrmgrl> drop tablespace tablespace_name including contents;
重建表空间及回滚段
9) svrmgrl> alter system disable restricted session;
10) 修改init.ora文件
2、数据库未完全关闭(数据库崩溃或使用shutdown abort命令关闭数据库)
1) 恢复备份
2) svrmgrl> startup mount
3) svrmgrl> select file#,name,status from v$datafile;
svrmgrl> alter database datafile filename online;
4) svrmgrl> select v1.group#,member,sequence#,first_change#
> from v$log v1,v$logfile v2
> where v1.group#=v2.group#;
5) svrmgrl> select file#,change# from v$recover_file;
见一方案2-4
6) svrmgrl> recover datafile filename;
7) svrmgrl> alter database open;
3、数据库处于打开状态
1) 删除回滚段和表空间
2) 重建表空间和回滚段
五 控制文件恢复
1.所有的控制文件均被破坏,将备份的控制文件拷贝至原目录下。对于RAW DEVICE,则:
dd if=’con.bak’ f=’/dev/rdrd/drd1’ seek=128
2.并非所有的控制文件均被破坏:用其他的控制文件启动数据库。

本文转自
http://space.itpub.net/47598/viewspace-199232

Oracle学习(十七)之还原表空间管理

一、还原表空间管理 1.查看还原表空间                 SQL> select FILE_NAME,status,TABLESPACE_NAME from dba_data_fil...
  • lzg1169350237
  • lzg1169350237
  • 2015年07月09日 08:56
  • 1271

使用rman恢复部分表空间

±ðÔÚÖ÷»úÉÏÓÃrman ÖŽÐÐ £¬Íš¹ýcommvault»ÖžŽ žßŒ¶ ×Ô¶šÒåœÅ±ŸÖŽÐÐ SET DBID 3958247272; run { allo...
  • web_gus
  • web_gus
  • 2014年08月11日 10:14
  • 1805

Oracle DB 执行表空间时间点恢复

• 列出在执行表空间时间点恢复(TSPITR) 时会发生的操作 • 阐释TSPITR 使用的术语的定义 • 确定适合将TSPITR 用作解决方案的情况 • 确定时间点恢复的正确目标时间 • 确定不能使...
  • rlhua
  • rlhua
  • 2013年10月13日 00:37
  • 5620

RMAN基于表空间的不完全恢复(TSPITR)

RMAN基于表空间的不完全恢复(TSPITR)表空间时间点恢复(TSPITR):概念 通过执行TSPITR 可将一个或多个表空间快速恢复到以前的某个时间。 执行TSPITR 不会影响数据库中其它表空间...
  • lqx0405
  • lqx0405
  • 2015年03月31日 12:04
  • 437

Oracle 表空间时点恢复(TSPITR)

表空间时点恢复,是Oracle在基于冷备,热备恢复以外的一种以表空间为粒度的,不完全恢复的形式来将表空间恢复到过去某个特定的时间点的一种恢复方式。它整合了RMAN以及DataPump这2个备份恢复工具...
  • robinson_0612
  • robinson_0612
  • 2017年04月25日 09:15
  • 1370

ORACLE表空间恢复方案

ORACLE表空间恢复方案 一)用户表空间 错误: 在启动数据库时出现ORA-01157,ORA-01110或操作系统级错误例如ORA-07360, 在关闭数据库(使用shutdown normal或...
  • snowman_sp
  • snowman_sp
  • 2005年10月14日 16:58
  • 655

ORACLE表空间恢复方案

一、 用户表空间错误: 在启动数据库时出现ORA-01157,ORA-01110或操作系统级错误例如ORA-07360, 在关闭数据库(使用shutdown normal或shutdown immed...
  • fidelhl
  • fidelhl
  • 2007年05月05日 13:24
  • 636

oracle表空间恢复方案

oracle表空间恢复方案 一)用户表空间 错误: 在启动数据库时出现or...
  • WWWFIND
  • WWWFIND
  • 2006年04月18日 19:10
  • 1158

ORACLE 恢复单个数据文件 非SYSTEM表空间或者撤销表空间

2009-06-03 11:41 ORACLE 恢复单个数据文件 非SYSTEM表空间或者撤销表空间 ERROR 位于第 1 行: ORA-01113: 文件 11 需要介质恢复 ORA...
  • porly
  • porly
  • 2012年08月26日 15:52
  • 1144

ORACLE只有表空间文件通过重建控制文件进行不完全恢复

最近公司在外面的一个数据库服务器崩溃了。于是临时恢复了一次数据库。最开始使用日志文件来恢复,但是过程中发现日志文件损坏了。于是在网上找到了一些资料进行了重建控制文件进行不完全恢复。下面是这个过程。由于...
  • lopper
  • lopper
  • 2010年08月08日 18:27
  • 3197
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ORACLE表空间恢复方案
举报原因:
原因补充:

(最多只允许输入30个字)