Welcome 微信登录

首页 / 数据库 / MySQL / RMAN完全恢复丢失的数据文件

前提条件:       丢失前做过RMAN备份,全库的       控制文件、归档、联机日志文件完好无损SYS@PROD>conn amy/amyConnected.AMY@PROD>create table t_amy02(b int); Table created.  AMY@PROD>conn / as sysdbaConnected.SYS@PROD>conn amy/amyConnected. AMY@PROD>insert into t_amy02 values(11); 1 row created. AMY@PROD>commit; Commit complete. AMY@PROD>select * from t_amy02;        B----------        11 -- 此时做rman的全库备份-- 下面再继续插入数据 AMY@PROD>insert into t_amy02 values(12); 1 row created. AMY@PROD>commit; Commit complete. AMY@PROD>select * from t_amy02;        B----------        11        12 AMY@PROD>conn / as sysdbaConnected.SYS@PROD>alter system switch logfile; System altered. SYS@PROD>conn amy/amyConnected.AMY@PROD>insert into t_amy02 values(13); 1 row created. AMY@PROD>commit; Commit complete. AMY@PROD>select * from t_amy02;        B----------        11        12        13 -- 以上三条记录,11在rman备份里,12在归档里,13在联机日志里-- 接着删除用户AMY的默认表空间TBS_AMY的数据文件"/u01/app/Oracle/oradata/PROD/disk1/tbs_amy01.dbf" AMY@PROD>create table t_amy03(c int);create table t_amy03(c int)*ERROR at line 1:ORA-01116: error in opening database file 10ORA-01110: data file 10: "/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf"ORA-27041: unable to open fileLinux Error: 2: No such file or directoryAdditional information: 3 --发现数据文件丢失后,需要做RMAN恢复--如果不关机直接做restore会失败,报错ORA-19573,需要shutdown immediate然后再做RMAN restore and recoverRMAN> shutdown immediate database closeddatabase dismountedOracle instance shut down RMAN> startup mount connected to target database (not started)Oracle instance starteddatabase mounted Total System Global Area   314572800 bytes Fixed Size                   1219184 bytesVariable Size               79693200 bytesDatabase Buffers           230686720 bytesRedo Buffers                 2973696 bytes RMAN> restore database; Starting restore at 23-JAN-14allocated channel: ORA_DISK_1channel ORA_DISK_1: sid=287 devtype=DISKallocated channel: ORA_DISK_2channel ORA_DISK_2: sid=285 devtype=DISK channel ORA_DISK_1: starting datafile backupset restorechannel ORA_DISK_1: specifying datafile(s) to restore from backup setrestoring datafile 00002 to /u01/app/oracle/oradata/PROD/disk1/undotbs01.dbfrestoring datafile 00004 to /u01/app/oracle/oradata/PROD/disk1/example1.dbfrestoring datafile 00007 to /u01/app/oracle/oradata/PROD/disk1/users1.dbfrestoring datafile 00008 to /u01/app/oracle/oradata/PROD/disk1/oltp1.dbfrestoring datafile 00009 to /u01/app/oracle/oradata/PROD/disk1/tbs_tommie01.dbfchannel ORA_DISK_1: reading from backup piece /home/oracle/backup/PROD_0jouptng_1_1channel ORA_DISK_2: starting datafile backupset restorechannel ORA_DISK_2: specifying datafile(s) to restore from backup setrestoring datafile 00001 to /u01/app/oracle/oradata/PROD/disk1/system001.dbfrestoring datafile 00003 to /u01/app/oracle/oradata/PROD/disk1/sysaux01.dbfrestoring datafile 00005 to /u01/app/oracle/oradata/PROD/disk1/indx1.dbfrestoring datafile 00006 to /u01/app/oracle/oradata/PROD/disk1/tools1.dbfrestoring datafile 00010 to /u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbfchannel ORA_DISK_2: reading from backup piece /home/oracle/backup/PROD_0iouptng_1_1channel ORA_DISK_1: restored backup piece 1piece handle=/home/oracle/backup/PROD_0jouptng_1_1 tag=TAG20140123T142135channel ORA_DISK_1: restore complete, elapsed time: 00:00:56channel ORA_DISK_2: restored backup piece 1piece handle=/home/oracle/backup/PROD_0iouptng_1_1 tag=TAG20140123T142135channel ORA_DISK_2: restore complete, elapsed time: 00:01:04Finished restore at 23-JAN-14 RMAN> recover database; Starting recover at 23-JAN-14using channel ORA_DISK_1using channel ORA_DISK_2 starting media recoverymedia recovery complete, elapsed time: 00:00:03 Finished recover at 23-JAN-14 RMAN> alter database open; database opened AMY@PROD>conn / as sysdbaConnected.SYS@PROD>conn amy/amyERROR:ORA-03135: connection lost contact  ERROR:ORA-24315: illegal attribute type  Warning: You are no longer connected to ORACLE.@>conn / as sysdbaERROR:ORA-24313: user already authenticated  @>exit[oracle@odd-oelr4u8 ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on Thu Jan 23 14:41:14 2014 Copyright (c) 1982, 2005, Oracle.  All rights reserved.  Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, Oracle Label Security, OLAP and Data Mining options SYS@PROD>conn amy/amyConnected.AMY@PROD>select * from t_amy02;select * from t_amy02              *ERROR at line 1:ORA-00376: file 10 cannot be read at this timeORA-01110: data file 10: "/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf"  SYS@PROD>alter tablespace tbs_amy begin backup;alter tablespace tbs_amy begin backup*ERROR at line 1:ORA-01128: cannot start online backup - file 10 is offlineORA-01110: data file 10: "/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf"  SYS@PROD>alter database datafile 10 online; Database altered. SYS@PROD>alter tablespace tbs_amy begin backup; Tablespace altered. SYS@PROD>alter tablespace tbs_amy end backup; Tablespace altered. SYS@PROD>conn amy/amyConnected.AMY@PROD>select * from t_amy02;        B----------        11        12        13       -- 至此,完全恢复完成
 
更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Linux环境下sqlldr一个csv文件RMAN登陆及连接target数据库的步骤方法相关资讯      RMAN  RMAN恢复数据文件 
  • RMAN故障一例(归档的备份,从不  (今 20:42)
  • RMAN的FORMATA格式说明  (03月10日)
  • Oracle 11g RMAN复制数据库的测试  (01月19日)
  • RMAN数据库迁移  (05月22日)
  • 使用RMAN复制恢复开发库环境  (02月17日)
  • Oracle 11g RMAN跨平台传输表空间  (01月19日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数