RMAN数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复
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数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复的更多相关文章
- Oracle之rman数据库在非归档模式下的备份和恢复
1.数据库在非归档模式下的备份 SQL> archive log list;数据库日志模式 非存档模式自动存档 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 ...
- 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程
测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...
- RMAN数据库恢复之丢失数据文件的恢复
删除某一数据文件:SQL> HOST del D:\app\Administrator\oradata\orcl\USERS01.dbf 启动数据库,提示丢失数据文件4,此时数据库处理MOUNT ...
- 07 归档模式 Active redo log丢失或损坏的恢复
环境同上一篇 模拟处于active状态的redo log损坏 sesion 1 SYS@ orcl >/ GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEM ...
- 查看oracle数据库是否为归档模式
查看oracle数据库是否为归档模式 [1] 1.select name,log_mode from v$database; NAME LOG_MODE --------------- ...
- Oracle数据库设置为归档模式的操作方法
Oracle归档模式非常非常重要!对于有些数据库刚装好后可能是非归档模式,这是很危险的!为了安全起见,一定要谨记:对于Oracle数据库,一定要设置为归档模式,尤其是生产库,只有这样才能实现数据库的有 ...
- 将Oracle数据库设置为归档模式及非归档模式
一.将Oracle数据库设置为归档模式 1)sql>shutdown normal/immediate;2)sql>startup mount;3)sql>alter databas ...
- 怎样将Oracle数据库设置为归档模式及非归档模式
怎样将Oracle数据库设置为归档模式及非归档模式 1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo lo ...
- [20171225]没有备份数据文件的恢复.txt
[20171225]没有备份数据文件的恢复.txt --//别人问的问题,增加了数据文件没有备份,如何恢复,实际上很简单,因为当前控制文件有记录建立时间只要从建立数据文件开始的--//归档日志都存在恢 ...
随机推荐
- JavaScript(19)jQuery HTML 获取和设置内容和属性
jQuery HTML jQuery 拥有可操作 HTML 元素和属性的强慷慨法. jQuery DOM 操作 jQuery 中非常重要的部分,就是操作 DOM 的能力.jQuery 提供一系列与 D ...
- [Hapi.js] View engines
View engines, or template engines, allow you to maintain a clean separation between your presentatio ...
- [J2EE学习][post,get乱码处理]
post乱码 通过flitter过滤(原理待未来好好学习) <!-- post乱码过虑器 --> <filter> <filter-name>CharacterEn ...
- sql service重置自动增长字段数字的方法
1.--SQL表重置自增长字段(不删除表的数据) DBCC CHECKIDENT('表名', RESEED, 起始数) 2.--删除表数据的同时,重置自动增长字段 truncate table 表名
- js 随手记
var name = 'frog' function hello(){ alert(name); // undefined var name = 'bbc'; } 在javascript中,函数是可以 ...
- gdal_merge.py
1 gdal_merge.py: 合并(Merge)/镶嵌(Mosaic)工具.要求图像必须是相同坐标系统.具有相同的波段数:可以不同分辨率,可以有重叠区域(后加入图像覆盖先加入的图像). 注意:只能 ...
- libxml两种换行方法
好久没上来留下一些记录了,可能是太忙,又或者是过于慵懒便疏于整理. libxml是一个开源的库,linux下解析xml文件经常用到,进行一些创读增删的操作. 最开始接触的时候,看到了一个简明易懂的&l ...
- eclipse中运行tomcat找不到jre的解决办法
一.在eclipse中选择 window--->preferences 二.runtime environment ----->edit 三.在这个地方就可以进行选择jre了.
- NSString / NSMutableString 字符串处理,常用代码 (实例)
http://blog.csdn.net/likendsl/article/details/7417878 Objective-C 中核心处理字符串的类是 NSString 与 NSMutableSt ...
- VS2015预览版中的C#6.0 新功能(一)
VS2015预览版中的C#6.0 新功能(二) VS2015预览版中的C#6.0 新功能(三) VS2015的预览版在11月12日发布了,下面让我们来看看C#都提供了哪些新的功能. 字符串添写(Str ...