NBU 还原windows ORACLE数据库(BW)
Posted Snowfun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NBU 还原windows ORACLE数据库(BW)相关的知识,希望对你有一定的参考价值。
将0.92数据库还原到1.92,还原时间7月13日
1.查询所需要的控制日志
bplist -C bw-prd01 -s 2017-7-2 -e 2017-7-15 -k oracle_bw-prd01_0_92_arch -t 4 -R -b -l / |findstr "cnt"
(第2、3步可并行)
2.开始还原控制文件
进入rman,数据库起到nomount利用备份文件进行控制文件还原
rman target / startup nomount run{ allocate channel ch00 type \'SBT_TAPE\'; send \'nb_ora_serv=nbumaster01\'; send \'nb_ora_client= bw-prd01\'; restore controlfile from \'cntrl_1705_1_949284511\'; release channel ch00; }
3.还原数据文件(开到mount状态)
alter database mount; run{ allocate channel ch00 type \'SBT_TAPE\'; allocate channel ch01 type \'SBT_TAPE\'; send \'nb_ora_serv=nbumaster01\'; send \'nb_ora_client=bw-prd01\'; set newname for datafile 1 to \'E:\\ERPORACLE\\DATAFILE\\SYSTEM.DATA1\'; set newname for datafile 2 to \'E:\\ERPORACLE\\DATAFILE\\SYSAUX.DATA1\'; set newname for datafile 3 to \'E:\\ERPORACLE\\DATAFILE\\UNDO.DATA1\'; set newname for datafile 4 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA1\'; set newname for datafile 5 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA2\'; set newname for datafile 6 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA1\'; set newname for datafile 7 to \'E:\\ERPORACLE\\DATAFILE\\SR3USR.DATA1\'; set newname for datafile 8 to \'E:\\ERPORACLE\\DATAFILE\\SR740.DATA1\'; set newname for datafile 9 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA3\'; set newname for datafile 10 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA4\'; set newname for datafile 11 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA5\'; set newname for datafile 12 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA6\'; set newname for datafile 13 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA7\'; set newname for datafile 14 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA2\'; set newname for datafile 15 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA3\'; set newname for datafile 16 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA4\'; set newname for datafile 17 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA5\'; set newname for datafile 18 to \'E:\\ERPORACLE\\DATAFILE\\SR3740.DATA6\'; set newname for datafile 19 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA8\'; set newname for datafile 20 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA9\'; set newname for datafile 21 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA10\'; set newname for datafile 22 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA11\'; set newname for datafile 23 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA12\'; set newname for datafile 24 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA13\'; set newname for datafile 25 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA14\'; set newname for datafile 26 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA15\'; set newname for datafile 27 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA16\'; set newname for datafile 28 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA17\'; set newname for datafile 29 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA18\'; set newname for datafile 30 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA19\'; set newname for datafile 31 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA20\'; set newname for datafile 32 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA21\'; set newname for datafile 33 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA22\'; set newname for datafile 34 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA23\'; set newname for datafile 35 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA24\'; set newname for datafile 36 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA25\'; set newname for datafile 37 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA26\'; set newname for datafile 38 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA27\'; set newname for datafile 39 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA28\'; set newname for datafile 40 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA29\'; set newname for datafile 41 to \'E:\\ERPORACLE\\DATAFILE\\SR3.DATA30\'; set newname for tempfile 1 to \'E:\\ERPORACLE\\DATAFILE\\TEMP.DATA1\'; set newname for tempfile 2 to \'E:\\ERPORACLE\\DATAFILE\\TEMP.DATA2\'; restore database until time "to_date(\'2017/07/13\',\'yyyy/mm/dd\')"; SWITCH DATAFILE ALL; SWITCH TEMPFILE ALL; release channel ch00; release channel ch01; }
可直接运行第5步看缺少哪些归档日志
4.查询SEQUENCE号,还原归档日志
sqlplus / as sysdba alter session set nls_date_format=\'YYYYMMDD HH24:MI:SS\'; set linesize 160; set pagesize; select THREAD#,SEQUENCE#,FIRST_TIME,COMPLETION_TIME from v$archived_log where --SEQUENCE# IN(63145); COMPLETION_TIME>to_date(\'20170713 09:00:00\',\'yyyymmdd hh24:mi:ss\') and COMPLETION_TIME<to_date(\'20170713 11:00:00\',\'yyyymmdd hh24:mi:ss\') order by SEQUENCE#;
--还原归档日志 rman target / run{ allocate channel ch0 type \'SBT_TAPE\'; allocate channel ch1 type \'SBT_TAPE\'; send \'NB_ORA_CLIENT=bw-prd01\'; send \'nb_ora_serv=nbumaster01\'; restore archivelog sequence between 63430 and 65699; release channel ch0; release channel ch1; }
5.恢复数据库
run{ allocate channel ch0 type \'SBT_TAPE\'; allocate channel ch1 type \'SBT_TAPE\'; send \'NB_ORA_CLIENT=bw-prd01\'; send \'nb_ora_serv=nbumaster01\'; recover database; release channel ch0; release channel ch1; } sqlplus / as sysdba alter database open resetlogs;
OR
sqlplus / as sysdba alter session set nls_date_format=\'YYYY/MM/DD HH24:MI:SS\'; recover database until time \'2017/07/13 10:00:00\' using backup controlfile; alter database open resetlogs;
以上是关于NBU 还原windows ORACLE数据库(BW)的主要内容,如果未能解决你的问题,请参考以下文章
大道浮屠诀---NBU7.7.3_oracle11G单机-单机(异机恢复WINDOWS2008平台)
100天精通Oracle-实战系列(第14天)Veritas NetBackup(NBU) 配合 RMAN 脚本备份 Oracle 数据库