关于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).数据库的文件为数据库信息提供真正的物理 ...
随机推荐
- Xcode 8 的 Debug 新特性
Contents OverView Static Analyzer Localizability Instance Cleanup Nullablility Runtime Issue View De ...
- Android中Webview使用自定义的javascript进行回调
先说为什么需要讨论这个问题. 现在很多的手机应用,都可能会直接嵌入一个web页面.这样做的好处:一个是功能更新方便,维护起来容易,只需要维护服务器的页面即可,不需要更新客户端:另一个是功能通用,不仅a ...
- subplot demo
Y=[6484.05190614446 3479.60374683749 2326.82521799362 862.207727785871 423.711173743815 299.23540931 ...
- cppcheck 下载与安装(Liunx)
下载网址:https://sourceforge.net/projects/cppcheck/files/cppcheck/ 选择安装包:cppcheck-1.75.tar.gz 解压安装包:tar ...
- JavaWeb chapter6 对象作用域
1. 对象属性所在作用域:谁能看到并使用这个属性,以及它能存活多久. 2. 应用上下文ServletContext对象作用域: 对于整个Web应用,只有一个ServletContext对象,而且在 ...
- Struts1的核心对象
1.ActionServlet.ActionMapping.ActionForm.ActionForward 2.config = "/WEB-INF/struts-config.xml&q ...
- CsvReader,CsvWriter的使用以及解决中文乱码
public void Csv(){ try { String[] stringList; String sourceFilePath = "D:\\111\\前海自身.csv"; ...
- windows核心编程---第六章 线程的调度
每个线程都有一个CONTEXT结构,保存在线程内核对象中.大约每隔20ms windows就会查看所有当前存在的线程内核对象.并在可调度的线程内核对象中选择一个,将其保存在CONTEXT结构的值载入c ...
- html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?
* HTML5 现在已经不是 SGML(标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言) 的子集,主要是关于图像,位置,存储,多任务等功能的增加. * 拖拽释放(Drag an ...
- 修改mysql用户名密码 和 PHPmysqlAdmin对应密码修改
本地的mysql运行时,可能会用到修改用户名密码: mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('输入新密码');不存在修改用户啊 ...