rman恢复-system表空间恢复

恢复system表空间的数据文件
system表空间存放着数据字典的信息。当数据库处于open状态,如果system表空间所对应的数据文件出现介质失败,那么当在其数据文件上执行I/O操作时,数据库会自动关闭;当数据库处于关闭状态时,如果system表空间所对应的数据文件出现介质失败,数据库将不能打开。
恢复system表空间必须在mount状态下进行。
示例一system表空间的数据文件被误删除
备份数据库。
删除system表空间对应的数据文件。
启动数据库到mount状态。
使用restore datafile转储数据文件,并使用recover datafile命令应用归档日志,最后使用alter database open打开数据库。
--备份数据库(略) --删除system表空间对应的数据文件 RMAN> host rm $ORACLE_BASE/product/10.2.0/oradatabak/system01.dbf RMAN> startup connected to target database (not started) Oracle instance started database mounted RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of startup command at 08/22/2011 21:56:39 ORA-01157: cannot identify/lock data file 1 - see DBWR trace file ORA-01110: data file 1: '/oracle/10g/oracle/product/10.2.0/oradatabak/system01.dbf' SQL> select file#,error from v$recover_file; FILE# ERROR ---------- ----------------------------------------------------------------- 1 FILE NOT FOUND SQL> select file#,name from v$datafile where file#=1; FILE# NAME ---------- ------------------------------------------------------------------------------------------------------------------------ 1 /oracle/10g/oracle/product/10.2.0/oradatabak/system01.dbf --启动数据库到mount状态并进行恢复 RMAN> run { 2> startup force mount; 3> restore datafile 1; 4> recover datafile 1; 5> sql 'alter database open'; 6> } 示例二system表空间数据文件所在磁盘出现故障
备份数据库(略)
删除system表空间对应的数据文件。
启动数据库到mount状态。
在restore database之前,执行set newname为数据文件指定新的位置。
在restore database之后,执行switch datafile改变控制文件中数据文件位置和名称。
之后通过执行recover database应用归档日志。
最后执行alter database open打开数据库。
--备份数据库(略) --删除system表空间对应的数据文件 RMAN> host 'rm /oracle/10g/oracle/product/10.2.0/oradatabak/system01.dbf' 2> ; --启动数据库到mount状态并进行恢复(为数据文件指定新位置,转储数据文件,恢复数据文件,打开数据库) RMAN> run { 2> startup force mount; 3> set newname for datafile 1 to '/oracle/10g/oracle/product/10.2.0/oradata/oralife/system01.dbf'; 4> restore datafile 1; 5> switch datafile 1; 6> recover datafile 1; 7> sql 'alter database open'; 8> }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值