前段时间一个亿级分区表,被分割成历史表和业务表,历史表中保留15天以外的数据,每天都会从业务表中的15天外的数据copy到历史表,并删除业务表15天外的数据,逻辑也很简单,但插入历史表的where 条件写的不是对,导致数据没插入,每天还从业务表中删除了。总之丢失了10天的业务历史数据,不巧的是客户突然要历史数据,呵呵。。祸不单行;

好了废话不多说,切入正题,rac 使用NBU netbackup 对数据库备份的,周日全备周一到周六增量

源主机HostA,目标主机HostB,NBUMaster主机nbuserver,Oracle_sid均为test,Oracle用户均为oracle。两台主机的操作系统、数据库版本、NBU软件版本一致。

1、增加nbuserver主机上文件

新建一个空文件,取消nbu的异机恢复限制

[nbuserver:root]# touch /usr/openv/netbackup/db/altnames/No.Restrictions

2、编辑完后需要重启netbackup

[nbuserver:root]# /usr/openv/netbackup/bin/bp.kill_all

[nbuserver:root]# /usr/openv/netbackup/bin/bp.start_all

下面开始恢复步骤(均为oracle用户操作)

3、copy spfile

在HostA上test数据库的pfile(create
pfile from spfile)copy至HostB中的$ORACLE_HOME/dbs目录下,因为源库是rac
节点,所以pfile copy到目标主机后还需要修改一下参数配置,把集群相关的配置删除

[HostA:ora]# ll $ORACLE_HOME/dbs/inittest.ora

4、HostB上,密码文件、相应的dump目录

[HostB:ora]#orapwd file=<fname> password=<password>entries=<users>

[HostB:ora]#mkdir $admin/test/*dump

5、启动数据库至nomount

[HostB:ora]# sqlplus '/as sysdba'

SQL> startup nomount

6、进行rman恢复

[HostB:ora]# rman target /

7、set dbid(HostA上test库的dbid)

RMAN> set dbid=1203153859

executing command: SET DBID

database name is "TEST" and DBID is 2091611406

查看HostA上的dbid

SQL> select dbid from v$database;

8、恢复control file

[HostB:ora]# /usr/openv/netbackup/bin/bplist -S 'nbuserver' -C 'HostA' -t 4 -R -l /

#查看nbuserver上的备份列表

 查找周日的全备的控制文件

RMAN>RUN {

2> allocate channel D1 type 'sbt_tape' parms 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';

3> send 'NB_ORA_SERV=nbuserver,NB_ORA_CLIENT=HostA';

4> RESTORE CONTROLFILE FROM 'cntrl_39324_1_784448328';

5> RELEASE CHANNEL D1;

6> }

9、控制文件修复成功,将库alter至mount状态

SQL> alter database mount;

database mounted

10、恢复数据库

RMAN> run {

2> allocate channel D1 type 'sbt_tape' parms 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';

3> send 'NB_ORA_SERV=nbuserver,NB_ORA_CLIENT=HostA';

4> set until time '2017-07-01 00:00:00';

5> restore database;

6> recover database;

7> RELEASE CHANNEL D1;

8> }

11、恢复归档日志

sql>select file#,checkpoint_change# from v$datafile;

sql>select file#,checkpoint_change# from v$datafile_header;

sql>select checkpoint_change# from v$database;

查看当前文件的snc和系统snc不一致,需要日志文件恢复

sql>recover database using backup controlfile until time '2017-07-01 00:00:00';

会提示需要的日志

rman>RUN {

1>allocate channel D1 type 'sbt_tape' parms 'SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so64';
2>send 'NB_ORA_SERV=hb-manage-backup,NB_ORA_CLIENT=proddb-2';

3>restore archivelog from logseq 55459 thread 1;

4>RELEASE CHANNEL D1;

5>}

根据需要的日志点提示,再从NBU上恢复归档日志文件

恢复成功后继续介质恢复

sql>recover database using backup controlfile until time '2017-07-01 00:00:00';

会提示需要的归档日志  auto 就行

 

12、打开数据库

SQL>
alterdatabase open resetlogs;

 

NBU Rman异机恢复Oracle的更多相关文章

  1. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

    Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...

  2. Linux平台下RMAN异机恢复总结

    下面总结.整理一下RMAN异机恢复这方面的知识点,这篇笔记在个人笔记里面躺了几年了,直到最近偶然被翻看到,遂整理.总结一下.如下所示,个人将整个RMAN异机恢复分为准备工作和操作步骤两大部分.当然,准 ...

  3. RMAN异机恢复实验---转载

    一.RMAN异机恢复实验 2011年3月23日00:44 1.环境介绍: 主机1: 操作系统 REDHAT5.5 IP地址 172.16.1.120 主机名 sigle 数据库版本 10.2.0.4 ...

  4. Oracle12c RAC RMAN异机恢复

    ######################################################## #编辑pfile文件initspdb.ora vi /oracle/app/oracl ...

  5. oracle rman异机恢复

      Oracle源主机 Oracle目标主机 主机平台 CentOS6.2(final) CentOs6.2(FInal) 主机名 vick rman IP地址 192.168.1.11 192.16 ...

  6. RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例

    测试环境:     操作系统  :  Red Hat Enterprise Linux ES release 4 (Nahant Update 4)   VMWARE     数据库     :  O ...

  7. rman异机恢复,全部恢复和增量恢复

    1.首先准备工作:hostname 192.168.222.11 ol7.localdomain ol7建立相关目录:mkdir -p /u01/app/oracle/oradata/DB11G/mk ...

  8. RMAN异机恢复步骤及故障处理

    一.測试机安装OS+Oracle Software.包含配置oracle用户.组和环境变量(略) 二.開始异机恢复 1. 复制源库最新备份集.初始化參数.password文件到測试机 [oracle@ ...

  9. Oracle RMAN 异机恢复一例

    背景介绍:本例需求是将NBU备份的oracle数据库恢复到另一主机上. NBU环境配置.异机上的Oracle软件安装配置忽略,下面只介绍OracleDB恢复的过程. ----------------- ...

随机推荐

  1. hdu3768 spfa+全排列

    题意:       给你一个无向图,和一些必须经过的点,问你从起点出发,到达所有必须经过的点再回来的最小总路径. 思路:       因为必须经过的点的数量很小,小于等于10,全排列是 10! = 3 ...

  2. POJ 2516 基础费用流

    题意       有n个顾客,m个供应商,k种货物,给你顾客对于每种货物的要求个数,和供应商对于每种货物的现有量,以及供应每种货物的时候供应商和顾客之间的运输单价,问你满足所有顾客的前提下的最小运输费 ...

  3. Python中数据类型的转换

    bytes<-->str a="hello" #str字符型 #str转换为bytes类型 b=a.encode("utf-8") 或 b=byte ...

  4. Intel汇编程序设计-整数算术指令(中)

    7.3  移位和循环移位的应用 7.3.1  多双字移位 要对扩展精度整数(长整数)进行移位操作,可把它划分为字节数组.字数组或双字数组,然后再对该数组进行移位操作.在内存中存储数字时通常采用的方式是 ...

  5. SpringMVC中<mvc:default-servlet-handler/>的作用

    问题所在:DispatcherServlet请求映射配置为"/",则Spring MVC将捕获Web容器所有的请求,包括静态资源的请求,Spring MVC会将它们当成一个普通请求 ...

  6. java之泛型的使用

    在java中,普通的类和方法只能用具体的类型,这对代码的限制很大,代码的可重用性大大降低. 那么如何才能让同一个类和方法使用不同类型的对象呢?在接触泛型之前我们可能会想到通过类型转换的方法来实现. p ...

  7. burp-suite(Web安全测试工具)教程

    Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程.所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代 ...

  8. 【转】浅谈自动特征构造工具Featuretools

    转自https://www.cnblogs.com/dogecheng/p/12659605.html 简介 特征工程在机器学习中具有重要意义,但是通过手动创造特征是一个缓慢且艰巨的过程.Python ...

  9. (10)MySQL进阶篇SQL优化(InnoDB锁-间隙锁)

    1.概述 当我们用范围条件而不是相等条件检索数据,并请求共享或排他锁时,InnoDB会给符合条件的已有数据记录的索引项加锁:对于键值在条件范围内但并不存在的记录,叫做"间隙(GAP)&quo ...

  10. JVM核心技术(第一篇)

    目录 Java基础知识 一. 字节码技术 二.JVM类加载器 类的加载时机 三.JVM内存结构 四.JVM启动参数 4.1 系统属性参数 4.2 运行模式 4.3 堆内存 4.4 GC相关 4.5 分 ...