Oracle 恢复[rman全备份集+当期归档日志]

不知道大家做没做过oracle的全备加归档日志的恢复,我今天早上做了一遍,MTTR大概需要15分钟的时间,大概还算是快速的恢复时间...
原文地址:http://www.5thinknet.com/blog/?p=191
下面我贴上步骤吧...大家做到的时候有个借鉴,这是基于LogSeq的恢复...
其实真正的恢复有好几种,还有基于SCN的恢复.
192.168.150.112 服务器恢复到192.168.150.124的步骤...


首先拿一份192.168.150.112上的spfile[spfileora10g.ora],
覆盖到192.168.150.124/opt/oracle/product/10.2.0/db_1/dbs
telnet 192.168.150.124
root(用户)
su - oracle
ftp 192.168.152.8
lcd /opt/oracle/arch
cd /opt/backup/data/dump
bin
get current.tar.gz(20080825.tar.gz)
bye
cd /opt/oracle/arch
gzip -d /20080825.tar.gz | tar -xvf
[oracle]> cd 20080825
[oracle]> ls
arch.vejosrr7_3054_1.3943415691.20080825  full.v9josreb_3049_1.3943415691.20080825
arch.vfjosrr7_3055_1.3943415691.20080825  full.vajosrec_3050_1.3943415691.20080825
arch.vgjosrr7_3056_1.3943415691.20080825  full.vbjosrec_3051_1.3943415691.20080825
ctl.c-3943415691-20080825-00              full.vcjosrp1_3052_1.3943415691.20080825
ctl.c-3943415691-20080825-01


打开另一个窗口,telnet 192.168.150.124
su - oracle
[oracle]>sqlplus /nolog
SQL>conn /as sysdba
SQL>shutdown immediate
SQL>startup nomount


打开另外一个窗口,telnet 192.168.150.124
su - oracle
$ rman target / nocatalog
rman> restore controlfile from '/opt/oracle/arch/ctl.c-3943415691-20080825-00';(从指定的文件中恢复controlfile)
rman> alter database mount;
rman> run {
            restore database;
           }
Starting restore at 25-AUG-08

Starting implicit crosscheck backup at 25-AUG-08
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=155 devtype=DISK
Crosschecked 193 objects
Finished implicit crosscheck backup at 25-AUG-08

Starting implicit crosscheck copy at 25-AUG-08
using channel ORA_DISK_1
Finished implicit crosscheck copy at 25-AUG-08

searching for all files in the recovery area
cataloging files...
no files cataloged

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00002 to /opt/oracle/oradata/ora10g/undotbs01.dbf
restoring datafile 00003 to /opt/oracle/oradata/ora10g/sysaux01.dbf
restoring datafile 00007 to /opt/oracle/oradata/ora10g/QYGLPLT.dbf
restoring datafile 00009 to /opt/oracle/oradata/ora10g/CIQ.dbf
channel ORA_DISK_1: reading from backup piece /opt/backup/data/full.v9josreb_3049_1.3943415691.20080825
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/backup/data/full.v9josreb_3049_1.3943415691.20080825 tag=ORAFULL
channel ORA_DISK_1: restore complete, elapsed time: 00:01:46
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /opt/oracle/oradata/ora10g/system01.dbf
restoring datafile 00004 to /opt/oracle/oradata/ora10g/users01.dbf
restoring datafile 00006 to /opt/oracle/oradata/ora10g/dctlbackup.dbf
restoring datafile 00008 to /opt/oracle/oradata/ora10g/SCL.dbf
channel ORA_DISK_1: reading from backup piece /opt/backup/data/full.vbjosrec_3051_1.3943415691.20080825
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/backup/data/full.vbjosrec_3051_1.3943415691.20080825 tag=ORAFULL
channel ORA_DISK_1: restore complete, elapsed time: 00:01:36
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00005 to /opt/oracle/oradata/ora10g/DCTL.dbf
restoring datafile 00010 to /opt/oracle/product/10.2.0/db_1/dbs/xmpgt.dbf
channel ORA_DISK_1: reading from backup piece /opt/backup/data/full.vajosrec_3050_1.3943415691.20080825
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/backup/data/full.vajosrec_3050_1.3943415691.20080825 tag=ORAFULL
channel ORA_DISK_1: restore complete, elapsed time: 00:01:25
Finished restore at 25-AUG-08

    
rman> catalog start with '/opt/oracle/arch/20080825/';

searching for all files that match the pattern /opt/oracle/arch/20080825

List of Files Unknown to the Database
=====================================
File Name: /opt/oracle/arch/20080825/arch.vejosrr7_3054_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/arch.vfjosrr7_3055_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/arch.vgjosrr7_3056_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/ctl.c-3943415691-20080825-00
File Name: /opt/oracle/arch/20080825/ctl.c-3943415691-20080825-01
File Name: /opt/oracle/arch/20080825/full.v9josreb_3049_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vajosrec_3050_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vbjosrec_3051_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vcjosrp1_3052_1.3943415691.20080825

Do you really want to catalog the above files (enter YES or NO)? y
cataloging files...
cataloging done

List of Cataloged Files
=======================
File Name: /opt/oracle/arch/20080825/arch.vejosrr7_3054_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/arch.vfjosrr7_3055_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/arch.vgjosrr7_3056_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/ctl.c-3943415691-20080825-00
File Name: /opt/oracle/arch/20080825/ctl.c-3943415691-20080825-01
File Name: /opt/oracle/arch/20080825/full.v9josreb_3049_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vajosrec_3050_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vbjosrec_3051_1.3943415691.20080825
File Name: /opt/oracle/arch/20080825/full.vcjosrp1_3052_1.3943415691.20080825
RMAN> restore archivelog from logseq 1580 thread 1 until logseq 1583 thread 1;

Starting restore at 25-AUG-08
using channel ORA_DISK_1

channel ORA_DISK_1: starting archive log restore to default destination
channel ORA_DISK_1: restoring archive log
archive log thread=1 sequence=1580
channel ORA_DISK_1: reading from backup piece /opt/oracle/arch/20080825/arch.vfjosrr7_3055_1.3943415691.20080825
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/oracle/arch/20080825/arch.vfjosrr7_3055_1.3943415691.20080825 tag=TAG20080825T020732
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
channel ORA_DISK_1: starting archive log restore to default destination
channel ORA_DISK_1: restoring archive log
archive log thread=1 sequence=1581
channel ORA_DISK_1: reading from backup piece /opt/oracle/arch/20080825/arch.vgjosrr7_3056_1.3943415691.20080825
channel ORA_DISK_1: restored backup piece 1
piece handle=/opt/oracle/arch/20080825/arch.vgjosrr7_3056_1.3943415691.20080825 tag=TAG20080825T020732
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 25-AUG-08

RMAN> recover database;

Starting recover at 25-AUG-08
using channel ORA_DISK_1

starting media recovery

archive log thread 1 sequence 1580 is already on disk as file /opt/oracle/arch/1_1580_624543570.dbf
archive log thread 1 sequence 1581 is already on disk as file /opt/oracle/arch/1_1581_624543570.dbf
archive log filename=/opt/oracle/arch/1_1580_624543570.dbf thread=1 sequence=1580
archive log filename=/opt/oracle/arch/1_1581_624543570.dbf thread=1 sequence=1581
archive log filename=/opt/oracle/arch/1_1582_624543570.dbf thread=1 sequence=1582
archive log filename=/opt/oracle/arch/1_1583_624543570.dbf thread=1 sequence=1583
archive log filename=/opt/oracle/arch/1_1583_624543570.dbf thread=1 sequence=1584
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 08/25/2008 00:52:16
RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile '/opt/oracle/arch/1_1583_624543570.dbf'
ORA-00310: archived log contains sequence 1583; sequence 1584 required
ORA-00334: archived log: '/opt/oracle/arch/1_1583_624543570.dbf'

rman> alter database open resetlogs;
using target database control file instead of recovery catalog
database opened

RMAN>

原文地址:https://www.cnblogs.com/axon/p/13707856.html