1、归档模式有备份,丢失数据文件的恢复
归档模式有备份,不管丢失什么数据文件,直接在RMAN下RESTOER--->RECOVER--->OPEN即可。

RMAN> STARUP MOUNT;

RMAN> RESTORE DATAFILE 5; --恢复丢失的数据文件,序号为5;

RMAN> RECOVER DATAFILE 5; --应用归档文件,联机重做日志文件执行数据库修复,将数据文件恢复到最近时间点(就是应用备份后到数据文件
丢失前的那些更改,以保持数据库的一致性状态) RMAN> ALTER DATABASE OPEN;

2、归档模式无备份,丢失数据文件的恢复
说明:如果丢失的是SYSTEM表空间中的数据文件,则必须要有备份,否则无法恢复。如果丢失的是临时表空间,则不需要恢复,重建一个就可以了。如果丢失的是其它表空间的数据文件,从其创建时刻起所有的重做日志文件都还在,因此只需要重建该数据文件后,通过RECOVER应用重做日志,重建该数据文件的内容即可。
2.1 非RMAN模式恢复(用户管理和备份方式)

准备测试数据:

SQL> CREATE TABLESPACE TEST DATAFILE 'D:\TEST\test01.dbf' size 10M;
表空间已创建。 SQL> CREATE USER TEST IDENTIFIED BY TEST DEFAULT TABLESPACE TEST QUOTA UNLIMITED ON TEST;
用户已创建。 SQL> GRANT CONNECT,RESOURCE TO TEST;
授权成功。 SQL> create table test(id number(2), name varchar2(4));
表已创建。 SQL> insert into test values(1,'NM1');
已创建 1 行。 SQL> insert into test values(2,'NM2');
已创建 1 行。 SQL> insert into test values(3,'NM3');
已创建 1 行。 SQL> COMMIT;
提交完成。 SQL> SELECT * FROM TEST;
ID NAME
---------- ----
1 NM1
2 NM2
3 NM3

--以SYS连接,修改数据文件为offline,删除test01.dbf,并执行数据文件恢复

SQL> alter database datafile 'D:\TEST\test01.dbf' offline;
数据库已更改。 SQL> host del D:\TEST\test01.dbf SQL> alter database create datafile 'D:\TEST\TEST01.DBF';
数据库已更改。
(如果是原路径无法访问,可在创建数据文件时指定新的路径:alter database create datafile 'E:\TEST\TEST01.DBF' as 'D:\TEST
\TEST01.DBF';)
SQL> recover datafile 'D:\TEST\TEST01.DBF';
完成介质恢复。 SQL> conn TEST/TEST@ORCL;
已连接。 --以sys连接实例,修改数据文件状态为ONLINE:
SQL> ALTER DATABASE DATAFILE 'D:\TEST\TEST01.DBF' ONLINE;
数据库已更改。 SQL> conn TEST/TEST@ORCL;
已连接。
------------------查看数据,已恢复。
SQL> SELECT * FROM TEST;
ID NAME
---------- ----
1 NM1
2 NM2
3 NM3

2.2 在RMAN模式下恢复
与用户管理的备份和恢复模式相比,只多了一步连接RMAN的操作。

C:\Users\Administrator>rman catalog RMANCT/RMANCT@ORCL;

恢复管理器: Release 11.2.0.1.0 - Production on 星期三 12月 24 22:05:29 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

连接到恢复目录数据库

RMAN> CONNECT TARGET /

连接到目标数据库: ORCL (DBID=1392118573)

-----------------------------------------------------------------------------
同样将数据文件置于OFFLINE,删除数据文件,RESTORE,再RECOVER,置数据文件为ONLINE即可。

SQL> alter database datafile 'D:\TEST\TEST01.DBF' offline;

数据库已更改。

SQL> host del D:\TEST\TEST01.DBF

RMAN> restore datafile 'D:\TEST\TEST01.DBF';

启动 restore 于 24-12月-14
在恢复目录中注册的数据库的新原型
正在启动全部恢复目录的 resync
完成全部 resync
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=178 设备类型=DISK 创建数据文件, 文件号 = 8 名称 = D:\TEST\TEST01.DBF
没有完成还原; 所有文件均为只读或脱机文件或者已经还原
完成 restore 于 24-12月-14
正在启动全部恢复目录的 resync
完成全部 resync RMAN> recover datafile 'D:\TEST\TEST01.DBF'; 启动 recover 于 24-12月-14
使用通道 ORA_DISK_1 正在开始介质的恢复
介质恢复完成, 用时: 00:00:01 完成 recover 于 24-12月-14 SQL> alter database datafile 'D:\TEST\TEST01.DBF' online; 数据库已更改。 SQL> CONN TEST/TEST@ORCL;
已连接。
SQL> SELECT * FROM TEST; ID NAME
---------- ----
1 NM1
2 NM2
3 NM3

RMAN数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复的更多相关文章

  1. Oracle之rman数据库在非归档模式下的备份和恢复

    1.数据库在非归档模式下的备份 SQL> archive log list;数据库日志模式 非存档模式自动存档 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 ...

  2. 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程

    测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...

  3. RMAN数据库恢复之丢失数据文件的恢复

    删除某一数据文件:SQL> HOST del D:\app\Administrator\oradata\orcl\USERS01.dbf 启动数据库,提示丢失数据文件4,此时数据库处理MOUNT ...

  4. 07 归档模式 Active redo log丢失或损坏的恢复

    环境同上一篇 模拟处于active状态的redo log损坏 sesion 1 SYS@ orcl >/ GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEM ...

  5. 查看oracle数据库是否为归档模式

    查看oracle数据库是否为归档模式   [1]   1.select name,log_mode from v$database;   NAME LOG_MODE   --------------- ...

  6. Oracle数据库设置为归档模式的操作方法

    Oracle归档模式非常非常重要!对于有些数据库刚装好后可能是非归档模式,这是很危险的!为了安全起见,一定要谨记:对于Oracle数据库,一定要设置为归档模式,尤其是生产库,只有这样才能实现数据库的有 ...

  7. 将Oracle数据库设置为归档模式及非归档模式

    一.将Oracle数据库设置为归档模式 1)sql>shutdown normal/immediate;2)sql>startup mount;3)sql>alter databas ...

  8. 怎样将Oracle数据库设置为归档模式及非归档模式

    怎样将Oracle数据库设置为归档模式及非归档模式 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo lo ...

  9. [20171225]没有备份数据文件的恢复.txt

    [20171225]没有备份数据文件的恢复.txt --//别人问的问题,增加了数据文件没有备份,如何恢复,实际上很简单,因为当前控制文件有记录建立时间只要从建立数据文件开始的--//归档日志都存在恢 ...

随机推荐

  1. Linux curses库使用

     相信您在网路上一定用过如 tin,elm 等工具, 这些软体有项共同的特色, 即他们能利用上下左右等方向键来控制游标的位置. 除此之外, 这些程式的画面也较为美观. 对Programming 有兴趣 ...

  2. ORA-00119: invalid specification for system parameter LOCAL_LISTENER

    重启oracle是提示错误ORA-00119: invalid specification for system parameter LOCAL_LISTENER. 解决方法: 命令查看错误信息:oe ...

  3. Chrome开发者工具详解(3):Timeline面板

    Timeline面板 Timeline面板是整个面板里面最复杂的一个面板,涉及的东西比较多.可以利用这个面板来记录和分析网页运行过程中的所有活动行为信息. 你可以充分利用这个面板来分析你的网页的程序性 ...

  4. 模板页 相对路径 JS 加载问题

    问题:我在master页面中引入了如下js文件:<script type="text/javascript" src="http://www.cnblogs.com ...

  5. Oracle - 找不到原因的无效字符

      当执行Oracle语句时,提示“无效字符”,而语句并无错误时,尝试把语句中的空格替换成半角状态的.   一般直接复制的语句会出现这种问题.

  6. C#获取QQ旋风的下载记录

    /* * 用户:从前的我 * 日期:2015/8/26 */ using System; using System.IO; namespace GetXf { class Program { publ ...

  7. HTTP的一些基础知识

    HTTP是计算机通过网络进行通信的规则.http是一种无状态协议:不建立持久的连接,服务端不保留连接信息. 一个完整的HTTP请示,通常用7个步骤:1.建立TCP连接2.Web浏览器向Web服务器发送 ...

  8. 轻松实现HTML5时钟(分享下自己对canvas的理解,原来没你想像的那么难哦)

    Hey,guys! 让我们一起用HTML5实现一下简易时钟吧! 接触canvas时, 我突然有一种非常熟悉的感觉------canvas的部分的功能其实和Photoshop中的 钢笔工具 是一样的.所 ...

  9. thinkphp使用模块/控制器/操作访问时出现No input file specified.解决方式

    thinkphp使用 http://serverName/index.php/模块/控制器/操作 访问时,出现了 No input file specified. 的错误 解决办法: 一: 开启cgi ...

  10. visual studio 2008安装报错问题处理

    今天刚入职,安装visual studio 2008时报错说web创建组件安装错误,后来发现是因为之前这电脑安装visual studio 2008的时候是office2007刚安装的版本,可是后来系 ...