[原创] oracle 恢复归档日志 ---- 从指定的磁带中恢复归档日志及查看命令

说明:

数据库:ORACLE 10G

备份软件:NBU 7.0

(一)、查看指定时间范围内的已经备份的归档日志:

$ rman target /  

list backup of archivelog time between "to_date('2016-03-01 20:00:00','yyyy-mm-dd hh24:mi:ss')" and "to_date('2016-03-02 00:00:00','yyyy-mm-dd hh24:mi:ss')";


(二)、从指定的磁带中恢复归档日志的方法:(异机恢复时,从指定的月度备份的磁带中恢复归档日志)

方法一:

指定参数(time between, from tag='xxxx')

$ rman target /  

run {
allocate channel ch00 type 'SBT_TAPE'
parms 'ENV=(NB_ORA_SERV=bkserver,NB_ORA_CLIENT=oradb1)';
allocate channel ch01 type 'SBT_TAPE'
parms 'ENV=(NB_ORA_SERV=bkserver,NB_ORA_CLIENT=oradb2)';
restore archivelog time between "to_date('2016-03-01 20:00:00','yyyy-mm-dd hh24:mi:ss')" and "to_date('2016-03-02 00:00:00','yyyy-mm-dd hh24:mi:ss')" from tag='TAG20160301T235035';
release channel ch00;
release channel ch01;
}



方法二:

指定参数(NSR_DATA_VOLUME_POOL=first_pool,NB_ORA_POLICY=ora_full)

$ rman target /  

run {
allocate channel ch00 type 'SBT_TAPE'
parms 'ENV=(NB_ORA_SERV=bkserver,NSR_DATA_VOLUME_POOL=per_pool,NB_ORA_POLICY=ora_full,NB_ORA_CLIENT=oradb1)';
allocate channel ch01 type 'SBT_TAPE'
parms 'ENV=(NB_ORA_SERV=bkserver,NSR_DATA_VOLUME_POOL=per_pool,NB_ORA_POLICY=ora_full,NB_ORA_CLIENT=oradb2)';
set archivelog destination to "/oradata/arch";
restore archivelog from logseq=30851 until logseq=30855 thread=2;
restore archivelog from logseq=36232 until logseq=36236 thread=1;
RELEASE CHANNEL ch00;
RELEASE CHANNEL ch01;
}



原文地址:https://www.cnblogs.com/fengaix6/p/6515098.html