Chinaunix首页 | 论坛 | 博客
  • 博客访问: 606647
  • 博文数量: 139
  • 博客积分: 826
  • 博客等级: 少校
  • 技术积分: 1367
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-25 17:30
文章分类

全部博文(139)

文章存档

2016年(2)

2015年(2)

2014年(1)

2012年(15)

2011年(41)

2007年(33)

2006年(45)

分类: Oracle

2012-05-30 16:49:35

RMAN全库【完全恢复/不完全恢复】
今天有幸做了几个RMAN的全库恢复实验,这里是一个brief版,方便忘了时可以瞬速找到
一 完全恢复
1.数据库全库【完全恢复】
$ rman target /                             登录rman工具,如果使用了catalog,则登陆方法rman target catalog
RMAN> startup mount                         必须为mount状态,才能restore 和 recover 数据库
RMAN> restore database;                    复制旧数据文件覆盖损坏的数据文件
RMAN> recover database;                    数据文件头SCN号同步当前日志中最后一个SCN号【完全恢复】
RMAN> alter database open;                 打开数据文件
二 不完全恢复
1.基于时间点【不完全恢复】
在restore  recover命令中直接使用until time 、until scn 、 until sequence参数
这种方法避免使用run代码块,建议使用这种方法     【必须启动到mount状态,才能restore 和 recover  数据库】
startup mount;
restore database until time "to_date('2012-04-04 19:13:50','yyyy-mm-dd hh24:mi:ss')";
recover database until time "to_date('2012-04-04 19:13:50','yyyy-mm-dd hh24:mi:ss')";
alter database open resetlogs;                   【resetlogs只在“不完全恢复”之后才有效,不完全恢复必须加resetlogs/noresetlogs选项打开数据,重置归档日志序列号从1开始】
注:该命令可将数据库恢复到指定时间点状态,但必须具备此时间点之前最后的有效备份,和所有相关归档日志。
2.基于scn号的【不完全恢复】
startup mount;
restore database until scn 10000;
recover database until scn 10000;
alter database open resetlogs;                   【resetlogs只在“不完全恢复”之后才有效,不完全恢复必须加resetlogs/noresetlogs选项打开数据,重置归档日志序列号从1开始】
注:该命令可将数据库恢复到指定的scn号的状态,但不包括此scn号。
3.基于归档日志序列号【不完全恢复】
startup mount;
restore database until sequence 123 thread 1;
recover database until sequence 123 thread 1;
alter database open resetlogs;                   【resetlogs只在“不完全恢复”之后才有效,不完全恢复必须加resetlogs/noresetlogs选项打开数据,重置归档日志序列号从1开始】
注:该命令可将数据库恢复到指定归档日志序列号的状态,如果归档日志列表存在断点使用这中方法恢复比较方便,断点意味着我们只能恢复到断点的开始点
                                     
如果在open下直接restore database ,会报如下错误
channel ORA_DISK_1: reading from backup piece /home/oracle/backup/DB_0fn7d50b 备份块,此备份块就是最后一次的备份来恢复,在catalog库中自动找【前提必须连接到catalog】
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 04/04/2012 12:03:18
ORA-19870: error reading backup piece /home/oracle/backup/DB_0fn7d50b  错误读取备份块
ORA-19573: cannot obtain exclusive enqueue for datafile 4              不能包括独占数据文件4队列 
小结:一般“实例恢复”采用完全恢复的多,“介质恢复”采用不完全恢复的多。
leonarding
20120404
tianjin
 
阅读(11455) | 评论(0) | 转发(3) |
给主人留下些什么吧!~~