关于oracle修复控制文件与数据文件不一致的问题----
本小菜鸟周末鼓捣数据库关于rman恢复与备份方面的实验,结果不知道哪根筋搭错了,手一哆嗦,做了不知道什么操作,就出现了数据库打不开的严重状态,只能开启到mount状态,但是切换到open状态时就会报错
ORA-01190: 控制文件或数据文件 1 来自最后一个 RESETLOGS 之前
ORA-01110: 数据文件 1: 'D:\APP\FX\ORADATA\ORCL\SYSTEM01.DBF'
google了下发现,是由于控制文件与数据文件不同步导致的,鼓捣了一下午加一晚上,一点起色都没有啊,最后竟然连参数文件spfile也抛弃了我,小菜鸟我挠头挠得都快没毛了。。。呜呜呜
但是、、、、、这个世界并没有抛弃我,因为聪明的我为了避免意外的发生,在实验之前做了全款备份,将数据文件和控制文件都做了完整的备份,作为一个听话的好孩子,我清楚地记得,老师说过,只要有完整的数据文件备份和相应的控制文件备份,我们就可以恢复数据库!!!
我坚信老师的这句话,于是乎开始了漫漫的数据恢复路,过程及其艰辛(伦家是小菜鸟啦,表笑话伦家啦~),终于,皇天不负我,我修好了我滴数据库,吼吼,先总结如下,以备以后忘记。。。。。。
1、登录rman,
rman target /;
set bdid='' -------这里要填入需要恢复的数据库的bdid,一定要填哦,不然不知道你要修复的是哪个数据库
startup mount; -------将数据库开启到mount状态;
2、查看当前我们拥有的备份集
RMAN> list backup summary; 备份列表
===============
文件关键字 TY LV S Ckp SCN Ckp 时间 段数 副本数 压缩标记
---- ------- - -- - ---------- ---------- ------- ------- ---------- ---
1 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
11 B 0 A 2224622 02-3月 -14 1 1 NO TAG2014030
2T142822
2 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
11 B 0 A 2224622 02-3月 -14 1 1 NO TAG2014030
2T142822
3 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
11 B 0 A 2224622 02-3月 -14 1 1 NO TAG2014030
2T142822
4 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
5 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
6 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
7 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
8 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
9 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
10 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
13 B 1 A 2225134 02-3月 -14 1 1 NO TAG2014030
2T143311
11 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
23 B 0 A 2231035 02-3月 -14 1 1 NO TAG2014030
2T160453
21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
17 B 0 A 2227698 02-3月 -14 1 1 NO TAG2014030
2T153455
15 B 1 A 2225770 02-3月 -14 1 1 NO TAG2014030
2T143810
12 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
25 B 1 A 2231845 02-3月 -14 1 1 NO TAG2014030
2T160929
12 21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
19 B 1 A 2229089 02-3月 -14 1 1 NO TAG2014030
2T154312
13 27 B 1 A 2232416 02-3月 -14 1 1 NO TAG2014030
2T161200
13 21 B 1 A 2229561 02-3月 -14 1 1 NO TAG2014030
2T154620
控制文件备份列表
============================
CF Ckp SCN Ckp 时间 BS 关键字 S 段数 副本数 压缩标记
---------- ---------- ------- - ------- ------- ---------- ---
2232493 02-3月 -14 28 A 1 1 NO TAG20140302T161200
2231937 02-3月 -14 26 A 1 1 NO TAG20140302T160929
2231067 02-3月 -14 24 A 1 1 NO TAG20140302T160453
2229596 02-3月 -14 22 A 1 1 NO TAG20140302T154620
2229123 02-3月 -14 20 A 1 1 NO TAG20140302T154312
2227735 02-3月 -14 18 A 1 1 NO TAG20140302T153455
2225807 02-3月 -14 16 A 1 1 NO TAG20140302T143810
2225211 02-3月 -14 14 A 1 1 NO TAG20140302T143311
2224655 02-3月 -14 12 A 1 1 NO TAG20140302T142822
2223642 02-3月 -14 10 A 1 1 NO TAG20140302T141712
RMAN>list incarnation of database; ---------------查看当前数据库的所有incarnation
数据库原型列表
DB 关键字 Inc 关键字 DB 名 DB ID STATUS 重置 SCN 重置时间
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1362531435 PARENT 1886312 20-1月 -14
2 2 ORCL 1362531435 PARENT 02-3月 -14
3 3 ORCL 1362531435 PARENT 02-3月 -14
4 4 ORCL 1362531435 CURRENT 2230890 02-3月 -14
通过观察,我们发现,我们拥有4个incarnation(原型),我们拥有2个版本的数据库备份,scn分别是2231035、2227698,我们能使用的是scn=2227698的数据库备份版本,该版本是原型2和3的中间状态,也就是说数据文件是在INCARNATION2之后, 3前备份的,所以我们要将数据库重置到incarnation 2:
RMAN->reset database to incarnation 2;
然后关闭数据库,将数据库开启到nomount状态,准备进行控制文件的恢复,我们首先要找到scn为2227698对应的数据库备份文件存放的位置,该文件的TAG=TAG20140302T153455
RMAN->shutdown immediate;
RMAN->startup nomount;
开始恢复数据文件
RMAN->restore controlfile from 'D:\app\fx\flash_recovery_area\orcl\BACKUPSET\2014_03_02\O1_MF_NCSN1_TAG20140302T160453_9K5SMWY8_.BKP';
还原控制文件后,将数据库切换到mount状态,进行相应数据文件的恢复,数据文件恢复后,用RESETLOGS打开数据库,如果打开数据库时报错
ORA-01190: 控制文件或数据文件 1 来自最后一个 RESETLOGS 之前
ORA-01110: 数据文件 1: 'D:\APP\FX\ORADATA\ORCL\SYSTEM01.DBF'
我们就需要修改参数_allow_resetlogs_corruption=true,然后再用RESETLOGS打开数据库就可以啦,记得用RESETLOGS打开数据库后一定要再次对数据库进行全库备份。
修改参数_allow_resetlogs_corruption时,我们可以通过重建pfile,在外围手动修改pfile,在文件内加入*._allow_resetlogs_corruption=true,后通过pfile启动数据库,在通过pfile重建spfile就可以啦。。。
关于为何选择scn是2231035、2227698的备份集作为待选的恢复备份?---因为这里需要使用的是一个全库备份的备份集,我们没有全库备份集,但是我们有0级备份啊,在今天这种情况下,完全可以用0级备份来代替全库备份,因为两者在数据内容上是完全一致的,只是0级备份不能用作数据块级的恢复而已。
至此,小菜鸟修复数据库的全部过程就到这里啦,感谢收看~~~
关于oracle修复控制文件与数据文件不一致的问题----的更多相关文章
- 【Oracle】非RMAN恢复数据文件、控制文件
实验环境:OEL 5.6 oracle 11g(11.2.0.4.0) 注意: system表空间数据文件不能在线recover,需要启动到mount状态再recover: undo表空间数据文件可以 ...
- Oracle sqlldr导入导出txt数据文件详解
一.sqlldr导入txt 1.预备 a).txt文件 这里要保存成无签名的UTF-8 b).oracle建表 2.编写控制文件input_test.ctl LOAD DATA CHARACTERSE ...
- ORACLE ORA-01157: 无法标识/锁定数据文件
create undo tablespace MOZI datafile 'E:\oracle\product\10.2.0\oradata\orcl\MOZI.DBF' size 2048M ext ...
- Oracle数据库表空间与数据文件的关系描述正确的是( )
Oracle数据库表空间与数据文件的关系描述正确的是( ) A.一个表空间只能对应一个数据文件 B.一个表空间可以对应多个数据文件 C.一个数据文件可以对应多个表空间 D.表空间与数据文件没任何对应关 ...
- SQLSERVER手动增长日志文件和数据文件
原文:SQLSERVER手动增长日志文件和数据文件 SQLSERVER手动增长日志文件和数据文件 手动增长日志文件,实际上就是修改日志文件的大小 size 的单位是MB 下面设置日志文件大小是204 ...
- Oracle的表空间和数据文件
一. 概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象: 永久段-->如表与索引 临时段-->如临时表数据与排序段 回滚段-->用于事物回滚或闪回内存的撤销数据 表空 ...
- Oracle 10g使用amdu抽取数据文件
环境:OEL 5.7 + Oracle 10.2.0.5 RAC 需求:实验在Oracle 10g环境使用amdu抽取数据库文件 本文主要目的是介绍3个知识点: 1.使amdu可以在oracle 10 ...
- Oracle管理表空间和数据文件详解
介绍 表空间是数据库的逻辑组成部分 从物理上将:数据库数据存放在数据文件中 从逻辑上将:数据库则是存放在表空间中 表空间由一个或是多个数据文件组成 数据库的逻辑结构 介绍: Oracle中逻辑结构包括 ...
- Oracle的表空间、数据文件、用户
每一个Oracle数据库都是由三种类型的文件组成:数据文件(Data File).日志文件(Log File)和控制文件(Control File).数据库的文件为数据库信息提供真正的物理 ...
随机推荐
- MFC List Control 控件添加单元格编辑,实现可编辑重写
在实现随机生成四则运算的个人项目中,目前已经完成基本功能,想要把程序变成一个Windows界面的程序.原本以为学习过MFC,应该很快就能完成.但是由于以前用的都是VC6.0,这次用了VS2010,稍微 ...
- Java里正则表达式
java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包.它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表 ...
- LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”(笔记)
今天使用使用动态查询的时候出现出现错误“LINQ to Entities 不支持 LINQ 表达式节点类型‘Invoke’.”,代码如下: IQueryable<CUSTOMER> que ...
- React Native 文本输入
TextInput是一个允许用户输入文本的基础组件.它有一个名为onChangeText的属性,此属性接受一个函数,而此函数会在文本变化时被调用.另外还有一个名为onSubmitEditing的属性, ...
- 一张图让你看懂各开源License[转]
你是否遇到过开源License,精炼而又晦涩的文字通常要读半天才能理解,而且大多数License差别不大,容易混淆.下面这张图让你段时间迅速掌握各种开源的License. 图片来源:阮一峰的博客. f ...
- Html5实现移动端、PC端 刮刮卡效果
刚从南方回来就分了一个刮刮卡效果的页面,特么的我在烦恼怎么用H5去实现这个效果呢,好不容易写出来了,产品居然说:“既然你可以写出来这个效果那当然好了,开始我只是打算让你实现点击就出现呢!”… … 尼玛 ...
- [双连通分量] POJ 3694 Network
Network Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 9434 Accepted: 3511 Descripti ...
- C++编程优化心得(持续更新)
1. 对齐原则.比如64位总线,每次寻址读取8B.编程时注意变量地址,尽量消耗总线最少的寻址次数.堆内存申请时,系统严格按照对齐原则分配,故而使用时候也尽量不要跨寻址边界. 2. 需要的时候,可为了效 ...
- MATLAB 例子研究 Motion-Based Multiple Object Tracking
这个例子是用来识别视频中多个物体运动的.我要研究的是:搞清楚识别的步骤和相应的算法,识别出物体运动的轨迹. 详细参见官方帮助文档,总结如下: 移动物体的识别算法:a background subtra ...
- Day2 summary
感觉今天就对电脑大扫除了. 卸了一早上cygwin也没找到方法,只能先放着不管,真上linux时才说. 搜了搜linux视频教程很多,应该好开个头.但这个毕竟是优先级不够高的. 高的必须是论文啊,还有 ...