恢复的过程和(https://www.cnblogs.com/abclife/p/5687993.html)差不多。
但是,具体过程有些不同。
如果按照之前的恢复方式,在run语句中同时运行restore和recover操作,虽然可以执行成功,但是在以resetlogs方式打开时会报错:

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-00392: log 3 of thread 1 is being cleared, operation not allowed
ORA-00312: online log 3 thread 1: '+abce' SQL> select member from v$logfile; MEMBER
--------------------------------------------------------------------------------
+abce
+abce
+abce
+abce
+abce
+abce
+abce
+abce 8 rows selected. SQL>

从这里可以看到,在找redo日志的时候,还是从asm磁盘中查找。因此发生了问题。

解决方案:
解决方案就是分开执行。
1.首先restore数据库

run{
allocate channel ch01 type 'sbt_tape';
SEND 'NB_ORA_SERV=nbubak,NB_ORA_CLIENT=abce1';
set newname for datafile '+ABCE/simple/datafile/system.283.914330399' to '/u01/app/oracle/oradata/simple/system.283.914330399';
set newname for datafile '+ABCE/simple/datafile/sysaux.276.914330399' to '/u01/app/oracle/oradata/simple/sysaux.276.914330399';
set newname for datafile '+ABCE/simple/datafile/undotbs1.280.914330399' to '/u01/app/oracle/oradata/simple/undotbs1.280.914330399';
set newname for datafile '+ABCE/simple/datafile/users.284.914330399' to '/u01/app/oracle/oradata/simple/users.284.914330399';
set newname for datafile '+ABCE/simple/datafile/undotbs2.281.914330739' to '/u01/app/oracle/oradata/simple/undotbs2.281.914330739';
set newname for datafile '+ABCE/simple/datafile/simple2.289.914403223' to '/u01/app/oracle/oradata/simple/simple2.289.914403223';
set newname for datafile '+ABCE/simple/datafile/simple.290.914422933' to '/u01/app/oracle/oradata/simple/simple.290.914422933';
set newname for datafile '+ABCE/simple/datafile/zabbix.292.913197723' to '/u01/app/oracle/oradata/simple/zabbix.292.913197723';
set newname for datafile '+ABCE/simple/datafile/simple.301.981364941' to '/u01/app/oracle/oradata/simple/simple.301.981364941';
restore database;
switch datafile all;
release channel ch01;
}

2.如果有需要,要将归档日志备份恢复到指定位置

3.修改redo文件的路径和名称
执行以下命令,找出redo路径和名称

select 'alter database rename file '''||member||''' to ''/u01/app/oracle/oradata/simple'||substr(member,21)||''';' from v$logfile;

然后根据查出的结果,执行修改文件路径和名称

alter database rename file '+ABCE/simple/datafile/group_3.278.997540305' to '/u01/app/oracle/oradata/simple/group_3.278.997540305';
alter database rename file '+ABCE/simple/datafile/group_2.279.997539653' to '/u01/app/oracle/oradata/simple/group_2.279.997539653';
alter database rename file '+ABCE/simple/datafile/group_1.282.997539437' to '/u01/app/oracle/oradata/simple/group_1.282.997539437';
alter database rename file '+ABCE/simple/datafile/group_4.272.997539667' to '/u01/app/oracle/oradata/simple/group_4.272.997539667';
alter database rename file '+ABCE/simple/datafile/group_5.273.557540335' to '/u01/app/oracle/oradata/simple/group_5.273.557540335';
alter database rename file '+ABCE/simple/datafile/group_6.274.557535155' to '/u01/app/oracle/oradata/simple/group_6.274.557535155';
alter database rename file '+ABCE/simple/datafile/group_7.367.557535353' to '/u01/app/oracle/oradata/simple/group_7.367.557535353';
alter database rename file '+ABCE/simple/datafile/group_8.368.557535405' to '/u01/app/oracle/oradata/simple/group_8.368.557535405';

3.执行recover操作

run{
allocate channel ch01 type 'sbt_tape';
SEND 'NB_ORA_SERV=nbubak,NB_ORA_CLIENT=abce1';
recover database until scn 8500716647;
release channel ch01;
}

最后,记得修改一下临时文件。

SQL> create temporary tablespace temp2 tempfile '/u01/app/oracle/oradata/simple/temp02.dbf' size 200M autoextend off;
SQL> alter database default temporary tablespace temp2;
SQL> drop tablespace temp; 或者
SQL> drop tablespace temp including contents and datafiles cascade constraints(彻底删除包括操作系统中的临时表空间的数据文件)

NBU将RAC数据库恢复到单机的更多相关文章

  1. 【RAC】将单实例备份集恢复为rac数据库

    [RAC]将单实例备份集恢复为rac数据库 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识, ...

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

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

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

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

  4. 6.Netbackup-Oracle数据库恢复演练报告(下)

    1.1 Oracle数据库恢复  目录 1 安装新的客户端 2 新建异机恢复文件 3 新建数据库实例 4 建立spfile文件 5 建立数据文件夹 6 启动数据库到nomount状态 7 列出备份信息 ...

  5. NBU Rman异机恢复Oracle

    前段时间一个亿级分区表,被分割成历史表和业务表,历史表中保留15天以外的数据,每天都会从业务表中的15天外的数据copy到历史表,并删除业务表15天外的数据,逻辑也很简单,但插入历史表的where 条 ...

  6. oracle rac 数据库常用命令

    oracle rac 数据库常用命令:1.所有实例和服务的状态srvclt status database -d orcl单个实例的状态:srvctl status instance -d orcl ...

  7. OCA读书笔记(16) - 执行数据库恢复

    16. Performing Database Recovery 确定执行恢复的必要性访问不同接口(EM以及命令行)描述和使用可用选项,如RMAN和Data Recovery Advisor执行恢复- ...

  8. RMAN_RAC归档日志备份包恢复到单机

    恢复归档日志的方法: RAC是ASM的存储且是OMF创建的格式,所以RAC的日志名为如下+ARCH/mioa/archive/1_73554_875548170.dbf.+ARCH/mioa/arch ...

  9. Netbackup-Oracle数据库恢复演练(上)

    目录 第一章NBU实施内容 1 第二章 环境准备 1 2.1添加LICENSE: 1 2.2安装配置NBU客户端(linux,unix相同) 2 2.3配置并验证oracle备份脚本 3 2.4添加备 ...

随机推荐

  1. Python NLTK 自然语言处理入门与例程(转)

    转 https://blog.csdn.net/hzp666/article/details/79373720     Python NLTK 自然语言处理入门与例程 在这篇文章中,我们将基于 Pyt ...

  2. linux(manjaro)磁盘迁移/opt /home

    目录 1. 创建临时挂载点/opt, 并将分区挂载到临时挂载点上: 2. 切换单用户,将除了root用户之外的用户踢出 3.  将/opt目录下的所有内容拷贝到临时挂载点中,等待结束 4. 进入/et ...

  3. python selenium phantomjs 报错

    报错: webdriver.PhantomJS() raise exception_class(value)selenium.common.exceptions.WebDriverException: ...

  4. shell编程第二天

  5. Codeforces.566E.Restoring Map(构造)

    题目链接 \(Description\) 对于一棵树,定义某个点的邻居集合为所有距离它不超过\(2\)的点的集合(包括它自己). 给定\(n\)及\(n\)个点的邻居集合,要求构造一棵\(n\)个点的 ...

  6. Yahoo Programming Contest 2019.F.Pass(DP)

    题目链接 惊了这是什么F题...怎么我都能做出来...以后atcoder的比赛也不能走神了万一有个这样的F呢(CF已有多次了= =) \(f[i][j]\)表示Takahashi现在一共有\(i\)个 ...

  7. Cheapest Palindrome [POJ3280] [区间DP] [经典]

    一句话题意:每个字母添加和删除都相应代价(可以任意位置 增加/删除),求把原串变成回文串的最小代价 Description 保持对所有奶牛的跟踪是一项棘手的任务,因此农场主约翰已经安装了一个系统来实现 ...

  8. [jzoj]1383.奇怪的问题

    Link https://jzoj.net/senior/#main/show/1383 Problem Alice总是会提出很多奇怪的问题,一天他让他的朋友Bob跟他一起研究一个奇怪的问题.问题是: ...

  9. 如何提高sql查询速度

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  10. 2018-8-16JWTtoken用户登录认证思路分析9502751

    2018-8-16JWTtoken用户登录认证思路分析9502751 JWT token在商城中的实现 class UserView(CreateAPIView): serializer_class ...