当前位置:  数据库>oracle

Rman备份异机恢复指南

    来源: 互联网  发布时间:2017-04-10

    本文导语: 环境介绍:操作系统版本:RHEL5.4  32位 Oracle版本:  10.2.0.1 32位Oracle_SID:  orcl源服务器和目的服务器的操作系统,oracle版本均一致 源服务器:192.168.227.20目的服务器:192.168.227.30,只需要安装oracle软件即可,不需要建库操作 一...

环境介绍:
操作系统版本:RHEL5.4  32位
Oracle版本:  10.2.0.1 32位
Oracle_SID:  orcl
源服务器和目的服务器的操作系统,oracle版本均一致



源服务器:192.168.227.20
目的服务器:192.168.227.30,只需要安装oracle软件即可,不需要建库操作

一:在源服务器上使用rman备份数据库,包括数据文件,归档日志文件和控制文件,参数文件的备份

  • [oracle@orcl ~]$ mkdir /u01/backup  
  • [oracle@orcl ~]$ rman target /  
  • Recovery Manager: Release 10.2.0.1.0 - Production on Tue Sep 6 16:04:53 2011  
  • Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  • connected to target database: ORCL (DBID=1287906064)  
  •  
  • RMAN> run {   
  • 2> allocate channel c1 device type disk;  
  • 3> backup incremental level 0    
  • 4> format '/u01/backup/db_full_%U.bkp'    
  • 5> tag '2011-09-06-FULL'  
  • 6> database plus archivelog;  
  • 7> release channel c1;  
  • 8> }  
  • RMAN> backup current controlfile format '/u01/backup/control20110906.bak';  
  • RMAN> backup spfile format '/u01/backup/spfile20110906.bak'; 
  • 二:在目的服务器上复制备份数据,并准备好相关的目录

  • [oracle@orcl ~]$ mkdir /u01/backup  
  • [oracle@orcl ~]$ scp -rp 192.168.227.20:/u01/backup/* /u01/backup/  
  • oracle@192.168.227.20's password:   
  • control20110906.bak                           100% 6944KB   1.7MB/s   00:04      
  • db_full_0fmlsmdt_1_1.bkp                      100%   97MB   4.4MB/s   00:22      
  • db_full_0gmlsme5_1_1.bkp                      100%  593MB   9.1MB/s   01:05      
  • db_full_0hmlsmg7_1_1.bkp                      100% 6656     6.5KB/s   00:00    
  • spfile20110906.bak                            100%   96KB  96.0KB/s   00:00   
  •  
  • [oracle@orcl ~]$ mkdir -p /u01/app/oracle/admin/orcl/{adump,bdump,cdump,dpdump,udump,pfile}  
  • [oracle@orcl ~]$ mkdir -p /u01/app/oracle/oradata/orcl  
  • [oracle@orcl ~]$ mkdir -p /u01/app/oracle/flash_recover_area/ORCL 
  • 三:在目的服务器上进行恢复

  • [oracle@orcl ~]$ echo 'db_name=orcl' > $ORACLE_HOME/dbs/initorcl.ora  
  • [oracle@orcl ~]$ export ORACLE_SID=orcl 
  • [oracle@orcl ~]$ rman target /  
  • Recovery Manager: Release 10.2.0.1.0 - Production on Tue Sep 6 16:18:19 2011  
  • Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  • connected to target database (not started)  
  •  
  • RMAN> set dbid 1287906064;       //指定DBID,需要和源服务器的DBID一致  
  • RMAN> startup nomount;           //启动数据库到nomount状态,这里需要前面创建initorcl.ora文件,否则将报错  
  • RMAN>  restore spfile from '/u01/backup/spfile20110906.bak';       //恢复参数文件  
  • RMAN> startup nomount force;                                       //重启实例到nomout状态  
  • RMAN> restore controlfile from '/u01/backup/control20110906.bak';  //恢复控制文件  
  • RMAN> recover database;         //还原数据库文件  
  • RMAN> recover database;         //恢复数据库文件,这里将报错  
  • RMAN-03002: failure of recover command at 09/06/2011 17:03:51  
  • RMAN-06054: media recovery requesting unknown log: thread 1 seq 15 lowscn 547974  
  • RMAN> exit  
  •  
  • [oracle@orcl ~]$ sqlplus /nolog   //在sqlplus中对数据库进行until cancel操作后以resetlogs方式打开  
  • SQL*Plus: Release 10.2.0.1.0 - Production on Tue Sep 6 17:04:22 2011  
  • Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  •  
  • SQL> conn /as sysdba  
  • Connected.  
  • SQL> recover database using backup controlfile until cancel;  
  • ORA-00279: change 547974 generated at 09/06/2011 16:49:11 needed for thread 1  
  • ORA-00289: suggestion :  
  • /u01/app/oracle/flash_recovery_area/ORCL/archivelog/2011_09_06/o1_mf_1_15_%u_.ar  
  • c  
  • ORA-00280: change 547974 for thread 1 is in sequence #15  
  •  
  •  
  • Specify log: {=suggested | filename | AUTO | CANCEL}  
  • cancel  
  • Media recovery cancelled.  
  • SQL> alter database open resetlogs;  
  • 四:测试

  • SQL> select member from v$logfile;  
  •  
  • MEMBER  
  • --------------------------------------------------------------------------------  
  • /u01/app/oracle/oradata/orcl/redo03.log  
  • /u01/app/oracle/oradata/orcl/redo02.log  
  • /u01/app/oracle/oradata/orcl/redo01.log  
  •  
  • SQL> select file_name from dba_data_files;  
  •  
  • FILE_NAME  
  • --------------------------------------------------------------------------------  
  • /u01/app/oracle/oradata/orcl/users01.dbf  
  • /u01/app/oracle/oradata/orcl/sysaux01.dbf  
  • /u01/app/oracle/oradata/orcl/undotbs01.dbf  
  • /u01/app/oracle/oradata/orcl/system01.dbf  
  • /u01/app/oracle/oradata/orcl/example01.dbf  
  • /u01/app/oracle/oradata/orcl/tbs_apple01.dbf  
  • 6 rows selected.  
  •  
  •  
  • SQL> select count(*) from dba_temp_files;  
  •   COUNT(*)  
  • ----------  
  •          1  
  •  
  • SQL> select count(*) from hr.employees;  
  •  
  •   COUNT(*)  
  • ----------  
  •        107 
  • 五:注意事项

  • RMAN> list incarnation;  //生成一个新的incarnation  
  • using target database control file instead of recovery catalog  
  •  
  • List of Database Incarnations  
  • DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time  
  • ------- ------- -------- ---------------- --- ---------- ----------  
  • 1       1       ORCL     1287906064       PARENT  1          2005-06-30:19:09:40  
  • 2       2       ORCL     1287906064       PARENT  446075     2011-08-25:17:55:31  
  • 3       3       ORCL     1287906064       CURRENT 547975     2011-09-06:17:07:09  
  •  
  • [oracle@orcl ~]$ emctl start dbconsole  //dbconsole需要重新配置,orapwd文件也需要创建  
  • TZ set to PRC  
  • OC4J Configuration issue. /u01/app/oracle/product/10.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_orcl.herostart.com_orcl not found 
  •  六:增量备份的异机恢复
    1:源服务器

  • SQL> create user rman_inr identified by "123456" default tablespace users;  
  • User created.  
  • SQL> grant connect,resource to rman_inr;  
  • Grant succeeded.  
  • SQL> create table rman_inr.test as select * from dba_source;  
  • Table created.  
  •  
  • RMAN> backup incremental level 1   
  • 2> format '/u01/backup/inr1_db_%U' tag 'inr_1'  
  • 3> database plus archivelog;  
  •  
  • [oracle@orcl ~]$ rman target /  
  • RMAN> backup incremental level 1   
  • 2> format '/u01/backup/inr1_db_%U' tag 'inr_1'  
  • 3> database plus archivelog;  
  •  
  • RMAN> backup current controlfile format '/u01/backup/control02.bak';  
  •  
  • [oracle@orcl ~]$ ls -lh /u01/backup/inr1_db_1*  
  • -rw-r----- 1 oracle oinstall  53M Sep  8 16:34 /u01/backup/inr1_db_1omm1ud0_1_1  
  • -rw-r----- 1 oracle oinstall  51M Sep  8 16:35 /u01/backup/inr1_db_1pmm1udk_1_1  
  • -rw-r----- 1 oracle oinstall 6.9M Sep  8 16:35 /u01/backup/inr1_db_1qmm1uf2_1_1  
  • -rw-r----- 1 oracle oinstall  11K Sep  8 16:35 /u01/backup/inr1_db_1rmm1uf5_1_1  
  •  
  • [oracle@orcl ~]$ scp /u01/backup/inr1_db_1* 192.168.227.30:/u01/backup/  
  • [oracle@orcl ~]$ scp /u01/backup/control02.bak 192.168.227.30:/u01/backup/    
  • 2:目标服务器

  • [oracle@orcl ~]$ sqlplus /nolog  
  • SQL> conn /as sysdba  
  • Connected.  
  • SQL> shutdown immediate;    
  •  
  • RMAN> set dbid=1287906064;  
  • RMAN> startup nomount;  
  • RMAN> restore controlfile from '/u01/backup/control02.bak';  
  • RMAN> startup mount force;  
  •  
  • RMAN> restore database;  
  • RMAN> recover database;  
  • RMAN-03002: failure of recover command at 09/08/2011 16:46:44  
  • RMAN-06054: media recovery requesting unknown log: thread 1 seq 45 lowscn 598452  
  • RMAN> exit  
  •  
  • [oracle@orcl ~]$ sqlplus /nolog  
  • SQL> conn /as sysdba  
  •  
  • SQL> recover database using backup controlfile until cancel;  
  • ORA-00279: change 598452 generated at 09/08/2011 16:35:49 needed for thread 1  
  • ORA-00289: suggestion : /u01/arch/orcl/1_45_760125331.arc  
  • ORA-00280: change 598452 for thread 1 is in sequence #45  
  •  
  • Specify log: {=suggested | filename | AUTO | CANCEL}  
  • cancel  
  • Media recovery cancelled.  
  •  
  • SQL> alter database open resetlogs;  
  • Database altered. 
  • 3:测试

  • SQL> conn rman_inr/123456  
  • Connected  
  •  
  • SQL> select count(*) from test;  
  •  
  •   COUNT(*)  
  • ----------  
  •     292428 

  •     
     
     
     
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle RMAN快速入门指南
  • rman配置及rman常用命令操作
  • Oracle相关:Rman Crosscheck删除失效归档


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3