在oracle 在日常维护的数据库中难免会遇到误删数据和使用(drop。delete。 truncate)当我们使用常规手段(flashback query 。flashback drop)当数据不能恢复。能够使用近期的逻辑备份,在异机使用dmp 来恢复对应的表,可是假设没有这些逻辑备份。可是有一个近期的rman 全备。那么我们就能够利用这个备份来恢复被误删的表空间。从而实现数据的恢复,这里我以NBU 的备份环境为例简单描写叙述下怎样来回复部分
表空间;

-------在nomount 状态 。恢复控制文件

run {

allocate channel t1 type 'sbt_tape';

send 'NB_ORA_SERV=netbackup,NB_ORA_CLIENT=http://blog.csdn.net/lixora';

restore controlfile to '/oracle11/oradata1/control011.ctl' from '/c-2151157071-20141111-00';

release channel t1 ;

}

-------在还原好控制文件后。将实例启动到mount状态,然后開始还原部分表空间数据文件:

rman target / nocatalog msglog=/home/oracledb/rman.log <<EOF

run {                                              

allocate channel t1 type 'sbt_tape';

allocate channel t2 type 'sbt_tape';               

send 'NB_ORA_SERV=netbackup,NB_ORA_CLIENT=http://blog.csdn.net/lixora';







set newname for datafile   1 to '/oracle11/oradata/datafile/system.262.762381347' ; 

set newname for datafile   3 to '/oracle11/oradata/datafile/undotbs1.264.762381401';

set newname for datafile   4 to '/oracle11/oradata/datafile/undotbs2.266.762381455';

set newname for datafile 227 to '/oracle11/oradata/datafile/system02.dbf';         

set newname for datafile 344 to '/oracle11/oradata/datafile/lixora.375.820259689'; 

set newname for datafile 345 to '/oracle11/oradata/datafile/lixora.414.820949317'; 





 restore tablespace system,undotbs1,undotbs2。lixora  ;

 switch datafile all;

 

release channel t1;

release channel t2;

}

EOF

---------【假设表空比較多。能够先批量生成表空间的 offline drop 命令】開始恢复数据库



rman target / msglog=recover.log << EOF

RUN{

ALLOCATE CHANNEL ch0 TYPE 'SBT_TAPE' ;

ALLOCATE CHANNEL ch1 TYPE 'SBT_TAPE' ;

send 'NB_ORA_SERV=netbackup,NB_ORA_CLIENT=http://blog.csdn.net/lixora';

set until time "to_date('2014/11/11 14:00:00','yyyy/mm/dd hh24:mi:ss')";





recover database skip forever tablespace SYSAUX,TEMP,USERS,INDEX_DATA;





release channel ch0;

release channel ch1;

}

EOF







---以resetlogs 方式打开oracle数据库

alter database open resetlogs。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

如何使用 RMAN 异构恢复一些表空间的更多相关文章

  1. RMAN 备份恢复 删除表空间后控制文件丢失

    先备份一个控制文件 RMAN> backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_ ...

  2. RMAN恢复 增加表空间后控制文件丢失

    查看目前的控制文件位置 SQL> select name from v$controlfile; NAME-------------------------------------------- ...

  3. 转://RMAN跨平台可传输表空间和数据库

    参考链接: http://blog.itpub.net/23135684/viewspace-776048/ http://blog.sina.com.cn/s/blog_69e7b8d7010164 ...

  4. 备份恢复-----system表空间损坏

    无法进行关库,报错如下 SQL> shutdown immediate ORA-01122: database file 1 failed verification checkORA-01110 ...

  5. Oracle备份恢复之无备份情况下恢复undo表空间

    UNDO表空间存储着DML操作数据块的前镜像数据,在数据回滚,一致性读,闪回操作,实例恢复的时候都可能用到UNDO表空间中的数据.如果在生产过程中丢失或破坏了UNDO表空间,可能导致某些事务无法回滚, ...

  6. RMAN备份数据库与表空间

    脚本: 数据库备份: backup database format='/u01/app/oracle/oradata/Backup/oradb_%d_%s.bak'; 表空间备份:backup tab ...

  7. nbu恢复 oracle10g rac asm 到单实例asm(恢复某个表空间)

    一 检验条件 二 准备工作 1 创建相关目录 mkdir -p /oracle/admin/orcl/adumpmkdir -p /oracle/admin/orcl/bdumpmkdir -p /o ...

  8. Oracle 阅读器-刚看完表空间回复的详细解释

    (一) 当使用一个控制文件的备份恢复,例如下面的附图.使用备份控制文件恢复位置 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGVtb25zb24=/fo ...

  9. 【RMAN】TSPITR--RMAN表空间基于时间点的自动恢复

    [RMAN]TSPITR--RMAN表空间基于时间点的自动恢复 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其 ...

随机推荐

  1. uva 10245 近期点对问题

    分治法的典例 当练手了 奇妙的是.使用inplace_merge按说应该是O(n)的算法.可是用sort nlogn的算法反而更快 先上快排版 #include <cstdio> #inc ...

  2. HTML——博客页面布局

    HTML文件 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/htm ...

  3. ZeroMQ注意事项

    Request-Reply状态 供client它必须是严肃的格在根据第一呼叫zmq_send() 函数,然后调用zmq_recv()函数的顺序来运行 对于server来说,运行时序相反 假设不依照这个 ...

  4. poj 2408 Anagram Groups(hash)

    id=2408" target="_blank" style="">题目链接:poj 2408 Anagram Groups 题目大意:给定若干 ...

  5. Directx11学习笔记【一】 最简单的windows程序HelloWin

    声明:本系列教程代码有部分来自dx11龙书及dx11游戏编程入门两本书,后面不再说明 首先,在vs2013中创建一个空的解决方案Dx11Demo,以后的工程都会放在这个解决方案下面.然后创建一个win ...

  6. Lua中的weak表——weak table(转)

    弱表(weak table)是一个很有意思的东西,像C++/Java等语言是没有的.弱表的定义是:A weak table is a table whose elements are weak ref ...

  7. SQL Server 开发利器 SQL Prompt 6.5 T-SQL智能感知分析器 下载地址 完全破解+使用教程

    SQL脚本越写越多,总是觉得编写效率太过于低下,这和打字速度无关.在我个人编写SQL脚本时,至少会把SQL的格式排列成易于阅读的,因为其他人会阅读到你的SQL,无论是在程序中或是脚本文件中,良好的排版 ...

  8. 在Linux下,在网络没有配置好前,怎样查看网卡的MAC地址?

    在Linux下,在网络没有配置好前,怎样查看网卡的MAC地址? 使用 dmesg 与 grep 命令来实际,例如以下: [root@localhost ~]# dmesg | grep eth e10 ...

  9. 什么时候PHP经验MySQL存储过程

    1.MySQL存储过程 数据库语言,我们经常使用的操作SQL语句必须首先编译在运行时.然后运行,存储过程(Stored Procedure)它被设置为完成一个特定的功能SQL报表设置.编译存储在数据库 ...

  10. 最艰难的采访IT公司ThoughtWorks代码挑战——FizzBuzzWhizz游戏

    最近的互联网招聘平台拉勾网在五月推出了"最艰难的采访IT公司"码挑战活动,评选出了5个最难面试的IT公司,即:ThoughtWorks.Google.Unisys.Rackspac ...