ITPub博客

首页 > Linux操作系统 > Linux操作系统 > RMAN全库【完全恢复/不完全恢复brief version】

RMAN全库【完全恢复/不完全恢复brief version】

原创 Linux操作系统 作者:leonarding 时间:2012-04-04 19:58:26 0 删除 编辑

今天有幸做了几个RMAN的全库恢复实验,这里是一个brief版,方便忘了时可以瞬速找到

一 完全恢复
1.数据库全库【完全恢复】
$ rman target /                             登录rman工具,如果使用了catalog,则登陆方法rman target sys/oracle@ls catalog cata/cata@leo

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

 

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

请登录后发表评论 登录
全部评论
刘盛,网名leonarding,the first ACEA in china, Oracle OCM10g&11g RHCE, ACOUG Core Member Blogger, DATAGURU Oracle数据库版主, ITPUB HADOOP版版主, DB2中国专家组成员, 专注于&Oracle&Hadoop&Nosql&SAS, 提倡“分享技术~成就梦想”, 新浪微博:@itpub_leonarding QQ:40354446

注册时间:2012-02-10

  • 博文量
    246
  • 访问量
    3227544