如何使用 RMAN 异构恢复一些表空间
2015-08-23 12:21
501 查看
在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。
表空间;
-------在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。
相关文章推荐
- LeetCode "Paint House II"
- asp.net mvc @Html.Raw 作用
- HDU 1879 最小生成树
- 小意境,大智慧
- fzu 2105(区间更新+位拆分)
- 【C语言经典实例】-switch分支结构-模拟自动售货机
- SQL操作表数据_update操作
- 笔记本惠普CQ14-a003TX加装内存和SSD固态硬盘
- elk分析nginx访问日志
- LVS----三种director的方式
- 王爽《汇编语言》第2版-----3、寄存器(内存访问)
- Android 开源组件PagerBottomTabStrip 快速构建底部导航栏
- SVN服务器搭建和使用(一)
- squid的安装与配置
- 三大WEB服务器对比分析(apache ,lighttpd,nginx)
- 黑马程序员-------Java笔记--------分数基本运算
- VS2012验证控件出现WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping的问题
- TimingTool - The Timing Diagram Editor
- HDU5418.Victor and World(状压DP)
- [Math] 常见的几种最优化方法