二、基于差异备份恢复7月20日星期四早上8:30分数据
1.查询所需要的归档日志(因为要返回20号刂8:30分的数据,所以控制 文件要晚于这个点,即取21号凌晨2点备份的控制文件)

bplist -C zhnsdfp -s -- -e -- -k oracle_zhnsdfp_0_97_seinescm_arch -t  -R -b -l  / |findstr "cnt"

2.基于Windows平台,要先创建一个实例,实例名可以根据你自己命名,Liunx平台可以直接创建一个pfile文件启动到nomount状态

3、Windows平台下创建好实例后,调整归档模式及目录,关闭数据库后可以将除了参数文件的其他数据库文件通通删掉

shutdown immediate 后删除以下文件:
删除归档文件G:\SEINESCM\ARCHIVELOG
删除数据文件:N:\SEINESCM_DB\   M:\DB_DATA\SEINESCMDB\
删除日志文件:D:\ORACLEDB\SEINESCM\REDO1.LOG、REDO2.LOG、REDO3.LOG
删除控制文件:D:\ORACLEDB\SEINESCM\CONTROL01.CTL、CONTROL02.CTL
删除临时文件:M:\DB_DATA\SEINESCMDB\TEMP03.DBF N:\SEINESCM_TEMPDB\TEMP10.DBF、TEMP11.DBF

--查询数据文件位置:
select name from v$datafile;
--查询日志文件位置:
select * from v$logfile;
--查询控制文件位置:
select name from v$controlfile;
--查看临时文件位置:
select * from v$tempfile;

4.开始还原控制文件

进入rman,数据库起到nomount利用备份文件进行控制文件还原

set oracle_sid=seinescm

rman target /

startup nomount;

run{
allocate channel ch00 type 'SBT_TAPE';
send 'nb_ora_serv=nbumaster01';
send 'nb_ora_client=zhnsdfp';
restore controlfile from 'cntrl_2064_1_949889225';
release channel ch00;
}

4.还原数据文件(开到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=zhnsdfp';
restore database
until time "to_date('2017/07/20 05:00:00','yyyy/mm/dd hh24:mi:ss')";
release channel ch00;
release channel ch01;
}

5.查询SCN号

sqlplus / as sysdba

alter session set nls_date_format='YYYYMMDD HH24:MI:SS';
set linesize ;
set pagesize; select THREAD#,SEQUENCE#,FIRST_TIME,COMPLETION_TIME from v$archived_log
where COMPLETION_TIME>to_date('20170719 00:00:00','yyyymmdd hh24:mi:ss')
and COMPLETION_TIME<to_date('20170720 10:00:00','yyyymmdd hh24:mi:ss')
order by SEQUENCE#;

6.还原归档日志

rman target /

--恢复脚本
run{
allocate channel ch0 type 'SBT_TAPE';
allocate channel ch1 type 'SBT_TAPE';
send 'NB_ORA_CLIENT=zhnsdfp';
send 'nb_ora_serv=nbumaster01';
restore archivelog sequence between and ;
release channel ch0;
release channel ch1;
}

恢复过程将回检索全备以来的归档日志到指定恢复时间的日志序列号,完成介质恢复后,用resetlogs模式打开数据库。

7.数据库恢复 :

还原完归档日志后利用控制文件进行数据库恢复,将数据库恢复 到20号早上8:30分

sqlplus / as sysdba

alter session set nls_date_format='YYYY/MM/DD HH24:MI:SS';
recover database until time '2017/07/20 08:30:00' using backup controlfile; alter database open resetlogs;

解决以下错误

这里报找不到归档日志序列的错误信息,领导为数据库的备份策略,周三周六全备,其他皆差异备份,所以需要还原全备以来的归档日志文件,

从日志序列到;

select THREAD#,SEQUENCE#,FIRST_TIME,COMPLETION_TIME from v$archived_log
where SEQUENCE#=''
order by SEQUENCE#; run{
allocate channel ch0 type 'SBT_TAPE';
allocate channel ch1 type 'SBT_TAPE';
send 'NB_ORA_CLIENT=zhnsdfp';
send 'nb_ora_serv=nbumaster01';
restore archivelog sequence between and ;
release channel ch0;
release channel ch1;
}
recover database until time '2017/07/20 08:30:00' using backup controlfile;
alter database open resetlogs;

8、解决以上错误后,再次进行数据库恢复

sqlplus / as sysdba

alter session set nls_date_format='YYYY/MM/DD HH24:MI:SS';
recover database until time '2017/07/20 08:30:00' using backup controlfile; alter database open resetlogs;

NBU 还原windows ORACLE数据库(FP)的更多相关文章

  1. NBU 还原windows ORACLE数据库(BW)

    将0.92数据库还原到1.92,还原时间7月13日 1.查询所需要的控制日志 bplist -C bw-prd01 -s -- -e -- -k oracle_bw-prd01_0_92_arch - ...

  2. NBU 还原windows ORACLE数据库(EC)

    rman target / startup nomount; run{ allocate channel ch00 type 'SBT_TAPE'; send 'nb_ora_serv=nbumast ...

  3. NBU 还原LINUX ORACLE 数据库(EHR)

    一.E-HR数据库(全备)恢复 目录 一.E-HR数据库(全备)恢复... 1 1. 使用bplist 命令读取备份文件... 1 2. 启动到nomount状态... 2 3. 利用rman还原控制 ...

  4. NBU 还原LINUX ORACLE数据库(CRM)

    [root@oraclea ~]# su - oracle [oracle@oraclea ~]$ bplist -C oracle-db1 -s // -e // -k oracle_oracle- ...

  5. NBU 还原LINUX ORACLE RAC数据库(MIDDB)

    MIDDB集群数据库恢复 目录 MIDDB集群数据库恢复... 1 1.安装 NBUcilent 1 2.修改hosts文件... 2 3.修改hosts文件... 2 4.使用bplis读取备份文件 ...

  6. NBU 还原LINUX ORACLE RAC数据库(CRM)

    CRM集群数据库恢复 linux centos 6.6 oracle 11.2.0.3 集群环境 1.53 oraclea 1.54 oracleb 在linux操作系统root用户下安装好NBUci ...

  7. nbu还原集群数据库异常问题

    集群数据库软件均已安装完毕,现在想从NBU上还原数据库,但在还原控制文件报错 [oracle@oracle-db1 ~]$ rman target / Recovery Manager: Releas ...

  8. windows 10 下使用Navicat for oracle 数据库还原

    一.前期准备 1.安装windows 10系统 2.安装oracle 11g 数据库 3.安装PLsql(也不需要) 4.安装sqlplus(这个必须有) 5.使用下面这个东西新建数据库(不懂创建的话 ...

  9. Windows环境下Oracle数据库的自动备份脚本

    批处理文件(.bat) @echo off echo ================================================ echo  Windows环境下Oracle数据 ...

随机推荐

  1. js固定表头的实现(转)

    原文链接:http://www.th7.cn/web/js/201509/121055.shtml 参考链接:http://www.jb51.net/article/102568.htm 写两个表格, ...

  2. eclipse SVN 上传.so库文件

    eclipse SVN提交代码的时候,是自动忽略.so库文件的.用下面所说的操作后,.so库文件右下角的图标会变成一个蓝色的+号的图标,这样就可以提交.so文件了 选择要上传的.so文件,右键 ——& ...

  3. Mac下 cordova 安装随笔

    首先这是我自己第一篇博客,如果有什么不对的,大家指出,积极修改. cordova是大家做混合开发最经常使用的一款使用HTML, CSS & JS进行移动App开发多平台共用一套代码,中文官方网 ...

  4. SOA实践指南-读书笔记

    SOA是英文Service-Oriented Architecture,即面向服务架构的缩写. SOA是一种范式,目的是增强灵活性.SOA很适宜处理复杂的分布式系统. SOA方法接受异质(不同的平台, ...

  5. WPF 多线程 UI:设计一个异步加载 UI 的容器

    对于 WPF 程序,如果你有某一个 UI 控件非常复杂,很有可能会卡住主 UI,给用户软件很卡的感受.但如果此时能有一个加载动画,那么就不会感受到那么卡顿了.UI 的卡住不同于 IO 操作或者密集的 ...

  6. office 2013 图标编辑

    1,找图标,网站:https://www.iconfinder.com/ 2,找到图标后用qq截图,之后粘贴到Adobe Illustrator 里边. 3,选定图像后,点击对象->图像描摹-& ...

  7. 自定义简单的struts2的s标签

    一:自定标签前需要了解的知识: BodyTagSupport类的方法: 编写标签对应的实现类时,需要重载BodyTagSupport类几个方法:doStartTag(), setBodyContent ...

  8. 【转】Python 中的 if __name__ == '__main__' 该如何理解

    转自:http://blog.konghy.cn/2017/04/24/python-entry-program/ 程序入口 对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面 ...

  9. ES6必知必会 (八)—— async 函数

    async 函数 1.ES2017 标准引入了 async 函数,它是对 Generator 函数的改进 , 我们先看一个读取文件的例子: Generator 写法是这样的 : var fs = re ...

  10. Linux的系统suspend和resume

    参考: www.wowotech.net/linux_kenrel/suspend_and_resume.htmlwww.wowotech.net/linux_kenrel/pm_interface. ...