RMAN>
注意,这里会有一个failover to的操作,先是去/u01/orabackup/backupsets读取,但是发现没有,但不会像之前那么样报错,而是转到了刚才我们catalog过的目录“/oracle/backupsets”中去读取,这次很顺利就把数据文件恢复出来了[oracle@bak ~]$ ll -lrth /oradata/ora10g/ total 1.2G -rw-r----- 1 oracle oinstall 21M Oct 12 18:36 zlm01.dbf -rw-r----- 1 oracle oinstall 31M Oct 12 18:36 users01.dbf -rw-r----- 1 oracle oinstall 101M Oct 12 18:36 example01.dbf -rw-r----- 1 oracle oinstall 166M Oct 12 18:37 undotbs01.dbf -rw-r----- 1 oracle oinstall 271M Oct 12 18:37 sysaux01.dbf -rw-r----- 1 oracle oinstall 561M Oct 12 18:38 system01.dbf -rw-r----- 1 oracle oinstall 7.2M Oct 12 18:50 control03.ctl -rw-r----- 1 oracle oinstall 7.2M Oct 12 18:50 control02.ctl -rw-r----- 1 oracle oinstall 7.2M Oct 12 18:50 control01.ctl
8. 还原测试机数据库 RMAN> recover database;
Starting recover at 12-OCT-14 using channel ORA_DISK_1
starting media recovery
channel ORA_DISK_1: starting archive log restore to default destination channel ORA_DISK_1: restoring archive log archive log thread=1 sequence=24 channel ORA_DISK_1: reading from backup piece /u01/orabackup/backupsets/ora10g-4175411955_20141012_860776830_317.arc channel ORA_DISK_1: restored backup piece 1 failover to piece handle=/oracle/backupsets/ora10g-4175411955_20141012_860776830_317.arc tag=ARC_BAK channel ORA_DISK_1: restore complete, elapsed time: 00:00:02 archive log filename=/u01/app/oracle/product/10.2.0/db_1/dbs/arch1_24_858698568.dbf thread=1 sequence=24 unable to find archive log archive log thread=1 sequence=25 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of recover command at 10/12/2014 18:52:11 RMAN-06054: media recovery requesting unknown log: thread 1 seq 25 lowscn 1091432
RMAN> exit
Recovery Manager complete.
由于RMAN是不完全恢复,无法保证数据与源库是完全一致的,只能恢复到做备份集的那个时刻
[oracle@bak ~]$ sqlplus / as sysdba
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options
SQL> alter database open; alter database open * ERROR at line 1: ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL> alter database open resetlogs; alter database open resetlogs * ERROR at line 1: ORA-00344: unable to re-create online log '/u01/app/oracle/oradata/ora10g/redo01.log' ORA-27040: file create error, unable to create file Linux Error: 2: No such file or directory
SQL> alter database add logfile '/oradata/ora10g/redo01.log' size 50m;
Database altered.
SQL> alter database add logfile '/oradata/ora10g/redo02.log' size 50m; alter database add logfile '/oradata/redo02.log' size 50m * ERROR at line 1: ORA-19502: write error on file "/oradata/ora10g/redo02.log", blockno 26625 (blocksize=512) ORA-27072: File I/O error Linux Error: 2: No such file or directory Additional information: 4 Additional information: 26625 Additional information: 52736
SQL> ! [oracle@bak ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 7.7G 7.3G 13M 100% / /dev/sda1 99M 12M 82M 13% /boot tmpfs 506M 0 506M 0% /dev/shm /dev/sdb1 5.0G 541M 4.2G 1