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_984_1_946173555';
release channel ch00;
} 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/06/07 11:16:41','yyyy/mm/dd hh24:mi:ss')";
release channel ch00;
release channel ch01;
}
--------------------------------
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 COMPLETION_TIME>to_date('20170602 23:00:00','yyyymmdd hh24:mi:ss')
and COMPLETION_TIME<to_date('20170607 20:00:00','yyyymmdd hh24:mi:ss')
order by SEQUENCE#; 68305-68827 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 68305 and 68827;
release channel ch0;
release channel ch1;
} -----------------------
sqlplus / as sysdba

alter session set nls_date_format='YYYY/MM/DD HH24:MI:SS';
recover database until time '2017/06/07 11:16:41' using backup controlfile; alter database open resetlogs;

二、基于差异备份恢复6月7日11:35分数据

1.查询所需要的归档日志

bplist -C zhnsdfp -s 2017-6-7 -e 2017-6-9 -k oracle_zhnsdfp_0_97_seineebs_arch -t 4 -R -b -l  / |findstr "cnt"

2.shutdown immediate 后删除数据库文件和归档日志文件。
删除C:\app\fast_recovery_area\SEINEEBS\control02.ctl和C:\app\fast_recovery_area\SEINEEBS\ARCHIVELOG\2017_06_20

3.开始还原控制文件

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_984_1_946173555';
release channel ch00;
}

4.还原数据文件

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/06/07 11:16:41','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 160;
set pagesize; select THREAD#,SEQUENCE#,FIRST_TIME,COMPLETION_TIME from v$archived_log
where COMPLETION_TIME>to_date('20170602 23:00:00','yyyymmdd hh24:mi:ss')
and COMPLETION_TIME<to_date('20170607 20:00:00','yyyymmdd hh24:mi:ss')
order by SEQUENCE#; ---68305-68827 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 68305 and 68827;
release channel ch0;
release channel ch1;
} -----------------------

 

6.恢复数据库

-----------------------
sqlplus / as sysdba alter session set nls_date_format='YYYY/MM/DD HH24:MI:SS';
recover database until time '2017/06/07 11:35:00' using backup controlfile; alter database open resetlogs;

三、基于全备(利用全备文件恢复数据库,还原7.22号的数据)

7.22凌晨进行全备,现需还原7.22号全备后的数据

1.查询所需要的归档日志,shutdown immediate 后删除以下文件:

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

2.利用备份文件进行控制文件还原,

rman target /

startup nomount;

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

3.进行数据库还原

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;
release channel ch00;
release channel ch01;
}

4,进行数据库恢复

run{
allocate channel ch00 type 'SBT_TAPE';
allocate channel ch01 type 'SBT_TAPE';
send 'nb_ora_serv=nbumaster01';
send 'nb_ora_client=zhnsdfp';
recover database
release channel ch00;
release channel ch01;
}

解决如下:

还原到最后报错,这是因为没有还原到数据库当前日志,可以根据指定的SCN号打开数据库

5.最后用resetlogs模式打开数据库。进行数据验证

alter database open resetlogs;

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

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

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

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

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

  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. 如何创建管理员权限的CMD命令提示符窗口

    最近在使用netstat -anob命令时提示 请求的操作需要提升. 总结了几种创建管理员权限的CMD命令行的方法. 创建临时管理员权限的CMD Win8系统: 按下windows徽标,直接输入cmd ...

  2. generator.xml文件与相关配置插件

    一,generator.xml配置信息 1 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...

  3. avalon 搭配 百度的UI移动框架 gmu 可以很好干活

    使用过的人评价, 这个UI稳定, bug少, 组件丰富, 触屏好; 小公司, 可以用用 链接

  4. JS在项目中用到的AOP, 以及函数节流, 防抖, 事件总线

    1. 项目中在绑定事件的时候总想在触发前,或者触发后做一些统一的判断或逻辑,在c#后端代码里,可以用Attribute, filter等标签特性实现AOP的效果,可是js中没有这种用法,归根到本质还是 ...

  5. 【转】Linux下同时复制多个文件

    一.命令方法 1.使用cp命令 cp /home/usr/dir/{file1,file2,file3,file4} /home/usr/destination/ 需要注意的是这几个文件之间不要有空格 ...

  6. Winform菜单之Menustrip

    有窗体必定有菜单了,可以直接使用菜单组件,也可以使用按钮(按钮就没法显示级联菜单的形式了). 下面重点介绍一下各种菜单 1.Menustrip 最常用的莫过于此菜单了,从工具栏中拖入一个menustr ...

  7. 用 Python 快速实现 HTTP 和 FTP 服务器

      用 Python 快速实现 HTTP 服务器 有时你需临时搭建一个简单的 Web Server,但你又不想去安装 Apache.Nginx 等这类功能较复杂的 HTTP 服务程序时.这时可以使用  ...

  8. Jenkins构建常见问题

    最近在用jenkins搭建.NET自动编译发布环境时遇到的一些问题,解释不一定都对,仅记录以备后用. 1.MSBUILD : error MSB1008: 只能指定一个项目 Build a Visua ...

  9. [LOJ2541]「PKUWC2018」猎人杀

    loj description 有\(n\)个猎人,每个猎人有一个仇恨度\(w_i\),每个猎人死后会开一枪打死一个还活着的猎人,打中每个猎人的概率与他的仇恨度成正比. 现在你开了第一枪,打死每个猎人 ...

  10. 每天进步一点点——Linux中的线程局部存储(一)

    转载请说明出处:http://blog.csdn.net/cywosp/article/details/26469435    在Linux系统中使用C/C++进行多线程编程时,我们遇到最多的就是对同 ...