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. SAX解析和生成XML文档

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本人声明.否则将追究法律责任. 作者: 永恒の_☆ 地址: http://blog.csdn.net/chenghui031 ...

  2. Java中遍历Map对象的方法

    方法一: 在for-each循环中使用entries来遍历 这是最常见的遍历方式,在需要获取key和value时使用. Map<Integer, Integer> map = new Ha ...

  3. border-radius讲解1

    如今CSS3中的border-radius出现后,让我们没有那么多的烦恼了,首先制作圆角图片的时间是省了,而且其还有多个优点:其一减少网站的维护的工作量,少了对图片的更新制作,代码的替换等等;其二.提 ...

  4. SQL Server 2008 geometry 数据类型

    摘自SQL Server 2008帮助 平面空间数据类型 geometry 是作为 SQL Server 中的公共语言进行时 (CLR) 数据类型实现的.此类型表示欧几里得(平面)坐标系中的数据. 注 ...

  5. 0122——UITabBarController

    UITabBarController是IOS中很常用的一个viewController.UITabBarController通常作为整个程序的rootViewController,而且不能添加到别的c ...

  6. java调试一

    Eclipse 平台的特色在于内置了 Java 调试器,该调试器提供所有标准调试功能,包括进行单步执行.设置断点和值.检查变量和值以及暂挂和恢复线程的能力.Eclipse 平台工作台(Eclipse ...

  7. codeforces 337C Quiz(贪心)

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud Quiz Manao is taking part in a quiz. The ...

  8. 如何只克隆git仓库中的一个分支?

    git clone -b 例如: git clone -b 指定的分支名字

  9. 利用Azure Automation实现云端自动化运维(3)

    Azure automation的认证方式:证书   该种方式是推荐的进行Automation认证的方式,好处在于安全性高,过期时间由自己控制,不好的地方在于大家在Windows上要生成证书比较麻烦, ...

  10. window7下statsvn统计代码量

    下载statsvn:http://www.statsvn.org/ 将下载后的statsvn.jar放到d:\svn目录下; 打开cmd窗口切换到需要统计代码的项目目录如:d:\project\web ...