RMAN 恢复笔记

准备做一些RMAN恢复测试案例:

1、生产环境:Oracle9i  No-RAC +raw

 只有  rman backupset & backuplog ,需要恢复至异机同平台 Oracle9i No-RAC  的文件系统上,不完全恢复;

2、生产环境:HP Oracle 10g No-RAC + Raw

        只有  rman backupset & backuplog ,需要恢复至IBM Oracle10g No-RAC  的文件系统上,完全恢复;

 

场景1的恢复过程:由于时间紧,没有整理很有条理;

mkdir -p /testfs/oradata/sdcen1rman
mkdir -p /testfs/admin/sdcen1rman/bdump
mkdir -p /testfs/admin/sdcen1rman/cdump
mkdir -p /testfs/admin/sdcen1rman/udump
mkdir -p /testfs/admin/sdcen1rman/adump

#ORACLE_SID恢复
export ORACLE_SID=sdcen1rman

rman target /

###DBID从备份日志中查询
RMAN> set   DBID=1314882979


RMAN> startup nomount
restore spfile to pfile '/oracle/app/oracle/product/9.2.0/dbs/initsdcen1rman.ora'  from '/testfs/SDCEN1c-1314882979-20110824-05';


RMAN> host;                                                                          

#######确认恢复的pfile文件
RMAN> startup force nomount pfile='/oracle/app/oracle/product/9.2.0/dbs/initsdcen1rman.ora'
######使用vi 编辑 pfile 确认相关目录的设置正确(including controlfile,bdump,cdump,udump etc..)
##############################################

RMAN> restore controlfile from  '/testfs/SDCEN1c-1314882979-20110824-05';
RMAN> alter database mount;
RMAN>run
{
set until time "to_date('2011/08/24 15:02:10','yyyy/mm/dd hh24:mi:ss')";
set newname  for  datafile 1  to '/testfs/oradata/sdcen1rman/vg1cen_2g_sys.dbf';
set newname  for  datafile 2  to '/testfs/oradata/sdcen1rman/vg1cen_8g_002.dbf';
........
set newname  for  datafile 79  to '/testfs/oradata/sdcen1rman/vg2cen_4g_011.dbf';
set newname  for  datafile 80  to '/testfs/oradata/sdcen1rman/vg2cen_4g_012.dbf';
restore database;    
}
==========rman====上面的语句只是将数据文件从备份集中恢复,并指定了恢复时间。
==========rman====下面的语句是将DB recover到一个特定时间,logseq,等。
==========rman====在OPEN之前,需要对redo进行改名处理,打开时需要使用resetlogs参数;

run
{
 allocate channel t1 type disk;
 recover database  until logseq|sequenece|time 13310 thread 1;
}


rman recover database
=========RMAN通过 RMAN从备份集中恢复指定区间的归档日志到指定目前。
run
2> {
3> set archivelog destination to '/testfs/admin/sdcen1rman';
4> restore archivelog from logseq 13306 until logseq 13310;
5> }

#### restore 100min 310GB
====#sql 语句执行数据文件改名操作,对控制文件进行了处理。
alter database rename file  '/dev/rvg1cen_2g_sys'   to  '/testfs/oradata/sdcen1rman/vg1cen_2g_sys.dbf';
...... 
alter database rename file  '/dev/rvg2cen_4g_010'   to  '/testfs/oradata/sdcen1rman/vg2cen_4g_010.dbf';
alter database rename file  '/dev/rvg2cen_4g_012'   to  '/testfs/oradata/sdcen1rman/vg2cen_4g_012.dbf';
recover database using backup controlfile;

alter database open;


=====通过rman恢复归档日志的办法第一种方法
list backup of archivelog all;
2:
run{
set archivelog destination to '/d01/vecentli';
restore archivelog from logseq xx until logseq yy;
}
=====通过rman恢复归档日志的办法第二种方法
restore archivelog   from这种语法,from backuppiece会报如上错,from tag没问题A
restore archvielog all from tag XXXXXXXXXXXX:

场景二:


 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/229689/viewspace-705728/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/229689/viewspace-705728/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值