`

RMAN完全恢复丢失的数据文件

阅读更多


前提条件:

        丢失前做过RMAN备份,全库的

        控制文件、归档、联机日志文件完好无损

SYS@PROD>conn amy/amy

Connected.

AMY@PROD>create table t_amy02(b int);



Table created.





AMY@PROD>conn / as sysdba

Connected.

SYS@PROD>conn amy/amy

Connected.



AMY@PROD>insert into t_amy02 values(11);



1 row created.



AMY@PROD>commit;



Commit complete.



AMY@PROD>select * from t_amy02;



        B

----------

        11



-- 此时做rman的全库备份

-- 下面再继续插入数据



AMY@PROD>insert into t_amy02 values(12);



1 row created.



AMY@PROD>commit;



Commit complete.



AMY@PROD>select * from t_amy02;



        B

----------

        11

        12



AMY@PROD>conn / as sysdba

Connected.

SYS@PROD>alter system switch logfile;



System altered.



SYS@PROD>conn amy/amy

Connected.

AMY@PROD>insert into t_amy02 values(13);



1 row created.



AMY@PROD>commit;



Commit complete.



AMY@PROD>select * from t_amy02;



        B

----------

        11

        12

        13



-- 以上三条记录,11在rman备份里,12在归档里,13在联机日志里

-- 接着删除用户AMY的默认表空间TBS_AMY的数据文件'/u01/app/Oracle/oradata/PROD/disk1/tbs_amy01.dbf'



AMY@PROD>create table t_amy03(c int);

create table t_amy03(c int)

*

ERROR at line 1:

ORA-01116: error in opening database file 10

ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'

ORA-27041: unable to open file

Linux Error: 2: No such file or directory

Additional information: 3



--发现数据文件丢失后,需要做RMAN恢复

--如果不关机直接做restore会失败,报错ORA-19573,需要shutdown immediate然后再做RMAN restore and recover

RMAN> shutdown immediate



database closed

database dismounted

Oracle instance shut down



RMAN> startup mount



connected to target database (not started)

Oracle instance started

database mounted



Total System Global Area    314572800 bytes



Fixed Size                    1219184 bytes

Variable Size                79693200 bytes

Database Buffers            230686720 bytes

Redo Buffers                  2973696 bytes



RMAN> restore database;



Starting restore at 23-JAN-14

allocated channel: ORA_DISK_1

channel ORA_DISK_1: sid=287 devtype=DISK

allocated channel: ORA_DISK_2

channel ORA_DISK_2: sid=285 devtype=DISK



channel ORA_DISK_1: starting datafile backupset restore

channel ORA_DISK_1: specifying datafile(s) to restore from backup set

restoring datafile 00002 to /u01/app/oracle/oradata/PROD/disk1/undotbs01.dbf

restoring datafile 00004 to /u01/app/oracle/oradata/PROD/disk1/example1.dbf

restoring datafile 00007 to /u01/app/oracle/oradata/PROD/disk1/users1.dbf

restoring datafile 00008 to /u01/app/oracle/oradata/PROD/disk1/oltp1.dbf

restoring datafile 00009 to /u01/app/oracle/oradata/PROD/disk1/tbs_tommie01.dbf

channel ORA_DISK_1: reading from backup piece /home/oracle/backup/PROD_0jouptng_1_1

channel ORA_DISK_2: starting datafile backupset restore

channel ORA_DISK_2: specifying datafile(s) to restore from backup set

restoring datafile 00001 to /u01/app/oracle/oradata/PROD/disk1/system001.dbf

restoring datafile 00003 to /u01/app/oracle/oradata/PROD/disk1/sysaux01.dbf

restoring datafile 00005 to /u01/app/oracle/oradata/PROD/disk1/indx1.dbf

restoring datafile 00006 to /u01/app/oracle/oradata/PROD/disk1/tools1.dbf

restoring datafile 00010 to /u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf

channel ORA_DISK_2: reading from backup piece /home/oracle/backup/PROD_0iouptng_1_1

channel ORA_DISK_1: restored backup piece 1

piece handle=/home/oracle/backup/PROD_0jouptng_1_1 tag=TAG20140123T142135

channel ORA_DISK_1: restore complete, elapsed time: 00:00:56

channel ORA_DISK_2: restored backup piece 1

piece handle=/home/oracle/backup/PROD_0iouptng_1_1 tag=TAG20140123T142135

channel ORA_DISK_2: restore complete, elapsed time: 00:01:04

Finished restore at 23-JAN-14



RMAN> recover database;



Starting recover at 23-JAN-14

using channel ORA_DISK_1

using channel ORA_DISK_2



starting media recovery

media recovery complete, elapsed time: 00:00:03



Finished recover at 23-JAN-14



RMAN> alter database open;



database opened



AMY@PROD>conn / as sysdba

Connected.

SYS@PROD>conn amy/amy

ERROR:

ORA-03135: connection lost contact





ERROR:

ORA-24315: illegal attribute type





Warning: You are no longer connected to ORACLE.

@>conn / as sysdba

ERROR:

ORA-24313: user already authenticated





@>exit

[oracle@odd-oelr4u8 ~]$ sqlplus / as sysdba



SQL*Plus: Release 10.2.0.1.0 - Production on Thu Jan 23 14:41:14 2014



Copyright (c) 1982, 2005, Oracle.  All rights reserved.





Connected to:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, Oracle Label Security, OLAP and Data Mining options



SYS@PROD>conn amy/amy

Connected.

AMY@PROD>select * from t_amy02;

select * from t_amy02

              *

ERROR at line 1:

ORA-00376: file 10 cannot be read at this time

ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'





SYS@PROD>alter tablespace tbs_amy begin backup;

alter tablespace tbs_amy begin backup

*

ERROR at line 1:

ORA-01128: cannot start online backup - file 10 is offline

ORA-01110: data file 10: '/u01/app/oracle/oradata/PROD/disk1/tbs_amy01.dbf'





SYS@PROD>alter database datafile 10 online;



Database altered.



SYS@PROD>alter tablespace tbs_amy begin backup;



Tablespace altered.



SYS@PROD>alter tablespace tbs_amy end backup;



Tablespace altered.



SYS@PROD>conn amy/amy

Connected.

AMY@PROD>select * from t_amy02;



        B

----------

        11

        12

        13

      

-- 至此,完全恢复完成
  • 大小: 23.1 KB
分享到:
评论

相关推荐

    Oracle RMAN恢复丟失的数据文件

    文档中详细叙述了丢失系统数据文件或一般数据文件2种情况下,如何利用RMAN恢复丢失的数据文件

    RMAN 关于各种文件丢失后的恢复

    关于oracle数据库文件丢失,主要包含: 参数文件,控制文件,联机日志文件(redo),归档日志文件(archive), 撤销文件(undo),数据文件(data)

    RMAN备份与恢复

    3.5备份指定数据文件 9 3.6 备份控制文件 10 3.7 备份归档日志文件 10 3.8 FORMAT字符串替代变量 12 3.9 CONFIGURE配置项介绍 13 3.10 RMAN备份相关的动态性能表 15 第四篇 RMAN备份进阶 16 4.1 建立增量备份 16 4.2...

    ORACLE RMAN备份恢复指南

    包含RMAN全量、增量、备份、恢复以及数据丢失、控制文件丢失、参数文件丢失、密码文件丢失、redo文件丢失、表空间损坏相关操作。

    RMAN 还原与恢复

    在Oracle中,三大文件即控制文件,数据文件,日志文件的丢失与破坏都将需要使用还原或恢复来使数据库正常化。而RMAN还原与恢复是实现数据库完整性、可靠性必不可少的手段之一。还原简言之即是将所需的文件从备份中...

    丢失全部数据库文件及全部redolog的恢复方法,可用作RMAN数据库迁移.doc

    丢失全部数据库文件及全部redolog的恢复方法,可用作RMAN数据库迁移.doc

    rman恢复方案和oracle异机恢复

    注:①恢复的前提是已经做好备份②完全恢复数据库是...一、恢复方案1、丢失数据文件,进行完全恢复 代码如下:RMAN>startup mount;RMAN>restore database;RMAN>recover database;RMAn>sql ‘alter database open’;2

    RMAN测试演练即讲解

    Rman不能备份口令文件和初始化参数文件(也就是前面提到的init.ora)。 1、 备份DataBase backup database; backup database是一次全备份,其实省略的很多参数,相当于用的默认的。而备份好的备份集放在哪里呢? 在...

    oracle10g课堂练习II(2)

    练习概览:恢复丢失的 TEMPFILE 和重做日志文件 4-19 5 数据库恢复 课程目标 5-2 恢复方法 5-3 用户管理的恢复: RECOVER 命令 5-4 RMAN 恢复: RESTORE 和 RECOVER 命令 5-5 使用 Oracle Enterprise Manager ...

    存储HCIE-Storage视频教程64讲.zip

    网盘文件永久链接 01指导 02指南 ...12 Oracle数据文件故障恢复 13 Oracle参数文件丢失恢复 14备份组网 15 simpana备份oracle实验 16 simpana实验 17 备份组网和备份介质和重删介绍 ................

    (053第7章)Rman recovery.pdf1

    (053第7章)Rman recovery注意:以下所有恢复和还原前都需要先进行备份!注意:以下所有恢复和还原前都需要先进行备份!1.丢失非关键数据文件丢失非关

    oracle10g课堂练习II(1)

    练习概览:恢复丢失的 TEMPFILE 和重做日志文件 4-19 5 数据库恢复 课程目标 5-2 恢复方法 5-3 用户管理的恢复: RECOVER 命令 5-4 RMAN 恢复: RESTORE 和 RECOVER 命令 5-5 使用 Oracle Enterprise ...

    11gR2RAC集群无数据丢失恢复至Oracle单机

    2.备份数据文件,归档日志,控制文件 3.备份完成后,业务又产生多余归档和复制asm归档文件到linux系统目录 4.开始恢复 ????????4.0目标库创建相同目录/db/app/oracle/exportdir/ ????????4.1复制备份的rman文件到...

    ORACLE 常用手册导入导出

    Archive Log模式下的物理备份可以用数据文件备份及Archive Log备份,将数据库恢复到数据库失败前的时间点,不会丢失数据。 2. 完成恢复可能需要很长时间。恢复只能用import方法进行,所以需要的时间包括: a. ...

    数据库ORA-01196故障-归档日志丢失恢复详解

    问题: 由于机房停电,其中一DG备库无法open,启动时报错 ...ORA-01110: 数据文件 1:’+DATA/htdb7/datafile/system.313.884996245′ 查看归档日志应用情况,发现一部分日志没应用 SQL> Select Name,Sequence#,applie

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第2/2部分)

    5.1 了解表空间和数据文件 140 5.1.1 Oracle数据存储模型 140 5.1.2 段、区间、块和行 142 5.1.3 文件存储技术 144 5.2 创建和管理表空间 146 5.2.1 创建表空间 146 5.2.2 更改表空间 150 5.2.3 删除表空间 ...

    OCPOCA认证考试指南全册:Oracle Database 11g(1Z0-051,1Z0-052,1Z0-053)--详细书签版(第1/2部分)

    5.1 了解表空间和数据文件 140 5.1.1 Oracle数据存储模型 140 5.1.2 段、区间、块和行 142 5.1.3 文件存储技术 144 5.2 创建和管理表空间 146 5.2.1 创建表空间 146 5.2.2 更改表空间 150 5.2.3 删除表空间 ...

    oracle恢复工具-FY_Recover_Data

    要恢复这个表的数据, 首先要在AUL中运行SCAN EXTENT命令, 因为Segment Header被格式化了, 所以Extent Map也可能丢失, 而Scan Extent则将扫描整个数据文件并将Extent分配信息写入AULEXT.TXT文件: AUL> SCAN EXTENT ...

Global site tag (gtag.js) - Google Analytics