并不是所有数据文件丢失都能够直接被恢复,如system;也不是所有数据文件丢失都需要恢复,如temp表空间。
下面模拟一张业务表。
1 创建演示环境
sys@ORCL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 16
Next log sequence to archive 18
Current log sequence 18
sys@ORCL> create tablespace think datafile '/u01/app/oracle/oradata/ORCL/datafile/think.dbf' size 10m;
Tablespace created.
sys@ORCL> create user think identified by think default tablespace think quota unlimited on think;
User created.
sys@ORCL> grant connect,resource to think;
Grant succeeded.
sys@ORCL> conn think/think
Connected.
think@ORCL> create table tt (name varchar2(20));
Table created.
think@ORCL> insert into tt values('think');
1 row created.
think@ORCL> commit;
Commit complete.
think@ORCL> select * from tt;
NAME
--------------------
think
2 模拟数据文件丢失
sys@ORCL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
sys@ORCL> host rm -rf /u01/app/oracle/oradata/ORCL/datafile/think.dbf
重新启动数据库
sys@ORCL> startup
ORACLE instance started.
Total System Global Area 419430400 bytes
Fixed Size 1219760 bytes
Variable Size 125829968 bytes
Database Buffers 289406976 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 8 - see DBWR trace file
ORA-01110: data file 8: '/u01/app/oracle/oradata/ORCL/datafile/think.dbf'
****************************用户管理的恢复方式***********************
3 执行修复和恢复
sys@ORCL> alter database create datafile '/u01/app/oracle/oradata/ORCL/datafile/think.dbf';
Database altered.
sys@ORCL> recover datafile 8;
Media recovery complete.
4 查询数据
sys@ORCL> alter database open;
Database altered.
sys@ORCL> conn think/think
Connected.
think@ORCL> select * from tt;
NAME
--------------------
think
*****************************rman恢复**********************
[oracle@localhost ~]$ rman target /
Recovery Manager: Release 10.2.0.1.0 - Production on Tue Aug 7 00:03:44 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database: ORCL (DBID=1316499950, not open)
RMAN> restore datafile 8;
Starting restore at 07-AUG-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=155 devtype=DISK
creating datafile fno=8 name=/u01/app/oracle/oradata/ORCL/datafile/think.dbf
restore not done; all files readonly, offline, or already restored
Finished restore at 07-AUG-12
RMAN> recover datafile 8;
Starting recover at 07-AUG-12
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:03
Finished recover at 07-AUG-12
RMAN> alter database open;
database opened
sys@ORCL> conn think/think
Connected.
think@ORCL> select * from tt;
NAME
--------------------
think
小结:丢失的数据文件,能够恢复的关键是,从其创建时刻起所有的重做日志文件都还在,因此我们才可以在重建该数据文件后,通过recover命令应用所有重做日志的方式,重建该数据文件的内容。
分享到:
相关推荐
6.3 恢复数据文件 25 6.4 丢失控制文件的恢复 25 第七篇 实例:RMAN 备份 shell脚本 29 第八篇 恢复目录 32 7.1 创建恢复目录 33 7.2 注册目标数据库到恢复目录 33 7.3 查看RMAN恢复目录的数据 34 7.4 使用存储脚步 ...
本文主要描述Oracle DB 在使用rman进行恢复时,如何利用rman注册备份集的方式达到主库和目标库数据一致的目的。当然Oracle数据库的话使用DG或ADG技术、或者rman的duplicate技术都是非常好的选择。
Oracle 11g R2 Rman备份与恢复_刘耀龙的博客-CSDN博客_rman备份
ORACLE备份分为物理备份和逻辑备份两种。...RMAN备份是一种物理备份,可以用RMAN来备份数据文件、控制文件、参数文件、归档日志文件。在数据库出现问题的时候可以通过RMAN物理备份恢复到数据库的失效点。
oracle RMAN 备份恢复总结 oracle RMAN 备份恢复总结 oracle RMAN 备份恢复总结
RMAN备份内容包括:整个数据库,表空间,数据文件,指定的数据文件,控制文件,归档日志文件,参数文件等 3.RMAN备份的类型 完整备份(full) 或增量备份(incremental) 一致性备份(consistent)或不一致性备份...
这是自己亲手研究完oracle 的rman备份后写的备份和恢复方案
rman的备份与恢复 , 常见操作 1、切换服务器归档模式,如果已经是归档模式可跳过此步: %sqlplus /nolog (启动sqlplus) SQL> conn / as sysdba (以DBA身份连接数据库) SQL> shutdown immediate; (立即关闭数据库) ...
教程名称:傻瓜式实战Oracle RMAN数据库备份和恢复视频课程目录:【】数据库备份和恢复系列].ITBOBA_RMAN_1【】数据库备份和恢复系列].ITBOBA_RMAN_10【】数据库备份和恢复系列].ITBOBA_RMAN_2【】数据库备份和恢复...
文档中详细叙述了丢失系统数据文件或一般数据文件2种情况下,如何利用RMAN恢复丢失的数据文件
rman 清理过期归档日志,oracleg归档日志满了,可以使用的
1,查看当前归档模式 SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 210 Current log ...
rman备份与恢复备份数据库 备份表空间 归档重做日志
详细讲解了RMAN的备份机制以及如何备份
rman 异地恢复,备份路径不一样时数据库恢复
Oracle RMAN增量备份恢复测试记录
Oracle数据库RMAN备份与恢复技术!
实际生产数据库中可以使用的rman备份脚本。写得很不错,dba可以下来学习研究
rman备份恢复实例
超经典的Oracle rman增量备份恢复策略,DBA工作过程中,在对数据库进行备份的时候可以参考此文档