RMAN-06026报错解决方法

环境:oracle 11g rac asm for linux 6.7

将系统备份,准备恢复至备机上,将pfile备份拷贝至备机

1.删除备机的现有库

sql> shutdown immediate

sql> startup mount restrict

sql> drop database;

2.使用spfile创建pfile

sql>create pfile from spfile=‘/home/oracle/pfileogg.ora‘;

3.修改pfile,并使用pfile启动数据库至nomount

sql>startup nomount pfile=‘PFILE路径‘;

4.使用rman恢复控制文件,并启动至mount状态

rman target /

rman> restore controlfile from ‘controlfile备份‘;

rman>sql ‘alter database mount‘;

rman>catalog start with ‘备份位置‘;

5.恢复数据文件时遇到如下报错:

rman> restore database;

RMAN-06026: some targets not found - aborting restore

RMAN-06023: no backup or copy of datafile 4 found to restore

RMAN-06023: no backup or copy of datafile 3 found to restore

RMAN-06023: no backup or copy of datafile 2 found to restore

RMAN-06023: no backup or copy of datafile 1 found to restore

检查过备份文件,发现都是存在的,根本没有问题。最后检查发现是incarnation的问题,因为对该数据库做过了一次恢复,做了resetlogs操作。

解决方法:重置数据库的incarnation到2,然后还原数据库,问题解决。

关于incarnation的资料,可以参考官方资料7.6.2 Point-in-Time Recovery and Database Incarnations: Concepts

rman>list incarnation;

List of Database Incarnations

DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time

------- ------- -------- ---------------- --- ---------- ----------

1       1       OGG      2941743472       PARENT  1          17-SEP-11

2       2       OGG      2941743472       PARENT  995548     24-FEB-14

3       3       OGG      2941743472       CURRENT 1070775    26-FEB-14

rman>reset database to  incarnation 2;

rman>restore database;

rman>recover database;

恢复完成,以resetlogs参数open成功。

恢复后查找了一些incarnation的资料

官方解释如下:

Listing Database Incarnations

Each time an OPEN RESETLOGS operation is performed on a database, this operation creates a new incarnation of the database. Database incarnations and their effect on database recovery are explained in"Database Incarnations".

源文档 <http://docs.oracle.com/cd/E11882_01/backup.112/e10642/rcmreprt.htm>

Database Incarnations

A database incarnation is created whenever you open the database with the

RESETLOGS option. After complete recovery, you can resume normal operations

without an OPEN RESETLOGS. After a DBPITR or recovery with a backup control file,

however, you must open the database with the RESETLOGS option, thereby creating a

new incarnation of the database. The database requires a new incarnation to avoid

confusion when two different redo streams have the same SCNs, but occurred at

different times. If you apply the wrong redo to your database, then you corrupt it.

The existence of multiple incarnations of a single database determines how RMAN

treats backups that are not in the current incarnation path. Usually, the current

database incarnation is the correct one to use. Nevertheless, in some cases resetting the

database to a previous incarnation is the best approach. For example, you may be

dissatisfied with the results of a point-in-time recovery that you have performed and

want to return the database to a time before the RESETLOGS. An understanding of

database incarnations is helpful to prepare for such situations.

总结了一下,主要是该测试环境的数据库之前恢复过一次,并且resetlogs了,第二次重新恢复的时候会遇到此问题,所以将incarnation恢复至之前一个就正常了。

时间: 2024-10-24 10:25:47

RMAN-06026报错解决方法的相关文章

zabbix源码安装流程及报错解决方法

zabbix源码安装流程及报错解决方法 一. zabbix的介绍 1) zabbix是什么 zabbix是一款基于web页面的.开源的.企业级的,支持分布式部署的监控软件. 2)2.zabbix的作用 监控windows和Linux主机上的软硬件状态. 监控各网络设备,如路由器.交换机.防火墙.f5.打印机等. 支持邮件短信微信等平台发送告警通知. 通过web页面及图形展示监控数据. 3)zabbix的特性 由zabbix server和agent程序协同工作,还支持分布式监控,这时需要安装za

node-sass报错解决方法

node-sass报错解决方法 node-sass报错解决方法 在Vue.js中,每一个vue文件都是一个组件,在.vue文件中可以将模板,脚本,样式写在一起,便于组织整个组件.在使用template,script时,编写css样式时,都进行的特别顺利,唯独当我想用sass来预处理css时,在style下使用lang='sass'一直报错. 在.vue中是这样的. <template > <div class="haha"> <p> keith +

报错解决方法Error: Can&#39;t connect to local MySQL server through socket

Error: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)Errno.: 2002解决方法一:因为你还没有启动mysql,当你启动mysql后,mysql.sock就会自动的生成../bin/safe_mysqld   --user=root   &(这是默认的).如果还没有,就是MYSQL权限没给,或其它原因还有就是 你的mysql是否启动了      启动后一般很难出现这个

PS win7_无法打开提示MSVCP120.dll报错解决方法

PS win7_无打开提示MSVCP120.dll报错解决方法 1.PS软件安装后无法打开,并提示MSVCP120.dll"ps无法启动此程序此 因为计算机中丢失msvcp120.dll" 报错提示: 问题解决方法: 下载DirectX Repair工具-安装并运行即可,会自动检测是否丢失msvcp120.dll等一系列套件. 提示图片: 下载链接:http://www.pc6.com/softview/SoftView_57945.html 注:根据自己本身使用系统版本,下载Dire

putty生成密钥SSH远程登录注意步骤及报错解决方法

putty生成密钥SSH远程登录注意步骤及报错解决方法 报"Putty server refused our key"(解决)排查步骤: 1..ssh文件夹权限和authorized_keys文件权限 1-1创建.SSH目录及authorized_keys文件 mkdir –p /root/.ssh touch authorized_keys 1-2 修改目录及文件权限 Chmod 700 .ssh Chmod 600 authorized_keys 2. Selinux安全机制和Ip

远程连接Windows Server 2012 R2虚拟机报错解决方法

前两天在公司通过TeamViewer连回家里做实验时发现,连到某一台二代虚机时登陆会弹出一个错误提示,内容如下: 经过测试发现,只要是切换到普通模式(非增强模式)就可以正常登陆进系统,但是只要切换到特权模式就会出现这样的错误,开始以为是远程登陆的错误,查看后发现远程连接一切正常,权限方面也已经加进去了,那为什么增强模式下登陆就会出错呢? 在组策略里找了找也没发现答案,之后突然惊觉这个账户并不是本地的管理员,也不在域管理员组里,只是一个普通用户,是不是因为这点呢?运行管理员权限的命令提示符之后.输

运行Tomcat报错 解决方法

运行Tomcat报错 解决方法 运行Tomcat控制台报错: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/local/jdk1.6.0_26/jre/lib/i386/server:/usr/local/jdk1.6.0_26/jre/lib/i3

c# winform 引用sqlite.dll 运行报错解决方法

错误信息 :  未能加载文件或程序集“System.Data.SQLite, Version=1.0.81.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139”或它的某一个依赖项.试图加载格式不正确的程序. 原因是 此sqlite.dll 是32位的. 解决方法 ,将项目的 目标平台改为 x86 如图 c# winform 引用sqlite.dll 运行报错解决方法

Loadrunner参数化逗号报错解决方法

Loadrunner参数化逗号报错解决方法 介绍Loadrunner参数化时,参数中包含有逗号时出错的解决方法. 在Loadrunner进行参数化时,参数中如果含有逗号,编辑保存后会报错: 此时对英文逗号进行转义即可正常进行参数化: 参数化方法即添加双引号进行转义: 如123456abc","即表示参数123456abc,

create-react-app创建项目后,运行npm run eject报错解决方法

运行npm run eject报错解决方法 主要问题是脚手架添加.gitgnore文件,但是却没有本地仓库,使用以下命令操作以下就可以了 git init git add . git commit -m 'saveing befor ejecting' 最后 npm run eject y 就解决了! 原文地址:https://www.cnblogs.com/ZhaoWeiNotes/p/11855731.html