测试环境:

操作系统  :  Red Hat Enterprise Linux ES release 4 (Nahant Update 4)   VMWARE

数据库     :  Oracle Database 10g Release 10.2.0.4.0 - Production

简要介绍,一台服务器A位于虚拟机VMWARE上,由于测试需要,在VMWARE上克隆了该系统作为服务器B,过了一段时间,由于数据变更,需要将服务器A上的ORACLE数据库还原恢复到服务器B上。

案例介绍:

由于这两台服务器的数据库实例名称相同、以及对应的环境基本一致(恢复目录相同,数据文件、控制文件都是一致),所以虽然是RMAN异机备份,但是这种异机恢复相对而言比较简单,不需要修改实例名称、数据库名称、指定数据文件位置等等。一般来说,这种环境的恢复还原基本没啥问题。下面介绍操作过程以及解决方法。

Step 1:通过FTP将对应的备份文件以及归档日志放置到相应的目录位置。

Step 2:还原数据库的spfile文件。

Step 3: 关闭数据库后,利用还原spfile的初始化文件启动数据库

Step 4: 恢复数据库控制文件。

Step 5: 将数据库启动到mount状态

RMAN> alter database mount;

database mounted

released channel: ORA_DISK_1

Step 6: restore 数据库(中间太多数据文件restore,使用.....替代)

Step 7 : recover database

Code Snippet
  1. RMAN> recover database;
  2. Starting recover at 02-APR-14
  3. using channel ORA_DISK_1
  4. starting media recovery
  5. Oracle Error:
  6. ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
  7. ORA-01152: file 1 was not restored from a sufficiently old backup
  8. ORA-01110: data file 1: '/u01/app/oracle/oradata/EPPS/system01.dbf'
  9. RMAN-00571: ===========================================================
  10. RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
  11. RMAN-00571: ===========================================================
  12. RMAN-03002: failure of recover command at 04/02/2014 12:03:29
  13. RMAN-06053: unable to perform media recovery because of missing log
  14. RMAN-06025: no backup of log thread 1 seq 76757 lowscn 14312652139 found to restore
  15. RMAN-06025: no backup of log thread 1 seq 76756 lowscn 14312646489 found to restore
  16. RMAN-06025: no backup of log thread 1 seq 76755 lowscn 14312646378 found to restore
  17. RMAN-06025: no backup of log thread 1 seq 76754 lowscn 14312646262 found to restore
  18. RMAN-06025: no backup of log thread 1 seq 76753 lowscn 14312644427 found to restore
  19. RMAN-06025: no backup of log thread 1 seq 76752 lowscn 14312642030 found to restore
  20. RMAN-06025: no backup of log thread 1 seq 76751 lowscn 14312640281 found to restore
  21. RMAN-06025: no backup of log thread 1 seq 76750 lowscn 14312638600 found to restore
  22. RMAN-06025: no backup of log thread 1 seq 76749 lowscn 14312637270 found to restore
  23. RMAN-06025: no backup of log thread 1 seq 76748 lowscn 14312636566 found to restore
  24. RMAN-06025: no backup of log thread 1 seq 76747 lowscn 14312635786 found to restore
  25. RMAN-06025: no backup of log thread 1 seq 76746 lowscn 14312634976 found to restore
  26. RMAN-06025: no backup of log thread 1 seq 76745 lowscn 14312634196 found to restore
  27. RMAN-06025: no backup of log thread 1 seq 76744 lowscn 14312633426 found to restore
  28. RMAN-06025: no backup of log thread 1 seq 76743 lowscn 14312632650 found to restore
  29. RMAN-06025: no backup of log thread 1 seq 76742 lowscn 14312631880 found to restore
  30. RMAN-06025: no backup of log thread 1 seq 76741 lowscn 14312631120 found to restore
  31. RMAN-06025: no backup of log thread 1 seq 76740 lowscn 14312630358 found to restore
  32. RMAN-06025: no backup of log thread 1 seq 76739 lowscn 14312629580 found to restore
  33. RMAN-06025: no backup of log thread 1 seq 76738 lowscn 14312628812 found to restore
  34. RMAN-06025: no backup of log thread 1 seq 76737 lowscn 14312628019 found to restore
  35. RMAN-06025: no backup of log thread 1 seq 76736 lowscn 14312627239 found to restore
  36. RMAN-06025: no backup of log thread 1 seq 76735 lowscn 14312626460 found to restore
  37. RMAN-06025: no backup of log thread 1 seq 76734 lowscn 14312625692 found to restore
  38. RMAN-06025: no backup of log thread 1 seq 76733 lowscn 14312624924 found to restore
  39. RMAN-06025: no backup of log thread 1 seq 76732 lowscn 14312624157 found to restore
  40. RMAN-06025: no backup of log thread 1 seq 76731 lowscn 14312623377 found to restore
  41. RMAN-06025: no backup of log thread 1 seq 76730 lowscn 14312622598 found to restore
  42. RMAN-06025: no backup of log thread 1 seq 76729 lowscn 14312621836 found to restore
  43. RMAN-06025: no backup of log thread 1 seq 76728 lowscn 14312621062 found to restore
  44. RMAN-06025: no backup of log thread 1 seq 76727 lowscn 14312620313 found to restore
  45. RMAN-06025: no backup of log thread 1 seq 76726 lowscn 14312618674 found to restore
  46. RMAN-06025: no backup of log thread 1 seq 76725 lowscn 14312607258 found to restore
  47. RMAN-06025: no backup of log thread 1 seq 76723 lowscn 14312598248 found to restore
  48. RMAN-06025: no backup of log thread 1 seq 76722 lowscn 14312595919 found to restore
  49. RMAN-06025: no backup of log thread 1 seq 76721 lowscn 14312593602 found to restore
  50. RMAN-06025: no backup of log thread 1 seq 76720 lowscn 14312591274 found to restore
  51. RMAN-06025: no backup of log thread 1 seq 76719 lowscn 14312588510 found to restore
  52. RMAN-06025: no backup of log thread 1 seq 76718 lowscn 14312585861 found to restore
  53. RMAN-06025: no backup of log thread 1 seq 76717 lowscn 14312583716 found to restore
  54. RMAN-06025: no backup of log thread 1 seq 76716 lowscn 14312581142 found to restore
  55. RMAN-06025: no backup of log thread 1 seq 76715 lowscn 14312578120 found to restore
  56. RMAN-06025: no backup of log thread 1 seq 76714 lowscn 14312575570 found to restore
  57. RMAN-06025: no backup of log thread 1 seq 76713 lowscn 14312572908 found to restore
  58. RMAN-06025: no backup of log thread 1 seq 76712 lowscn 14312569377 found to restore
  59. RMAN-06025: no backup of log thread 1 seq 76711 lowscn 14312200784 found to restore
  60. RMAN-06025: no backup of log thread 1 seq 76710 lowscn 14312113790 found to restore
  61. RMAN-06025: no backup of log thread 1 seq 76709 lowscn 14312070694 found to restore
  62. RMAN-06025: no backup of log thread 1 seq 76708 lowscn 14312069907 found to restore
  63. RMAN-06025: no backup of log thread 1 seq 76707 lowscn 14312069494 found to restore
  64. RMAN-06025: no backup of log thread 1 seq 76706 lowscn 14312042189 found to restore
  65. RMAN-06025: no backup of log thread 1 seq 76705 lowscn 14312014827 found to restore
  66. RMAN-06025: no backup of log thread 1 seq 76704 lowscn 14311999274 found to restore
  67. RMAN-06025: no backup of log thread 1 seq 76703 lowscn 14311967291 found to restore
  68. RMAN-06025: no backup of log thread 1 seq 76702 lowscn 14311962023 found to restore
  69. MAN-06025: no backup of log thre
  70. RMAN>

截图如下所示

关于ORA-01547的解释如下所示:

此错误的最可能的原因是执行不完全恢复前。忘记从一个足够旧的备份还原一个或 多个数据文件。

Step 8:

   1: RMAN> alter database open resetlogs;
   2:  
   3: RMAN-00571: ===========================================================
   4:  
   5: RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
   6:  
   7: RMAN-00571: ===========================================================
   8:  
   9: RMAN-03002: failure of alter db command at 04/02/2014 12:04:53
  10:  
  11: ORA-01152: file 1 was not restored from a sufficiently old backup
  12:  
  13: ORA-01110: data file 1: '/u01/app/oracle/oradata/EPPS/system01.dbf'
  14:  
  15: RMAN>
  16:  
  17: RMAN> exit

关于open resetlogs选项,是指打开数据时,重置联机重做日志(online redo log),即将重做日志的sequence置零,为什么要重置重做日志呢?不完全恢复后,原来的联机重做日志(online redo log)里面包含的是未做恢复前的数据,而这些数据对于恢复后的数据库不再有效,所以数据库会要求在open之前先对联机重做日志(online redo log)的sequence置零。Resetlogs命令表示一个数据库逻辑生存期的结束和另一个数据库逻辑生存期的开始,每次使用Resetlogs命令的时候,SCN不会被重置,不过ORACLE会重置日志序列号,而且会重置联机重做日志内容(相当于把所有的联机日志重新“格式化”)。

解决方法

此时可以通过设置隐藏参数_allow_resetlogs_corruption之后,使数据库在Open过程中,跳过某些一致性检查,从而使数据库可能跳过不一致状态。操作步骤如下

Code Snippet
  1. [oracle@DB-Server 2014_04_01]$ sqlplus / as sysdba
  2. SQL*Plus: Release 10.2.0.4.0 - Production on Wed Apr 2 12:05:57 2014
  3. Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
  4. Connected to:
  5. Oracle Database 10g Release 10.2.0.4.0 - Production
  6. SQL> create spfile from pfile='/u01/app/oracle/product/10.2.0/db_1/dbs/initEPPS.ora';
  7. File created.
  8. SQL> shutdown immediate;
  9. ORA-01109: database not open
  10. Database dismounted.
  11. ORACLE instance shut down.
  12. SQL> startup mount;
  13. ORACLE instance started.
  14. Total System Global Area 1258291200 bytes
  15. Fixed Size 1267236 bytes
  16. Variable Size 822086108 bytes
  17. Database Buffers 419430400 bytes
  18. Redo Buffers 15507456 bytes
  19. Database mounted.
  20. SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;
  21. System altered.
  22. SQL> recover database using backup controlfile until cancel;
  23. ORA-00279: change 14311145729 generated at 04/01/2014 08:57:48 needed for
  24. thread 1
  25. ORA-00289: suggestion :
  26. /u03/flash_recovery_area/EPPS/archivelog/2014_04_02/o1_mf_1_76627_%u_.arc
  27. ORA-00280: change 14311145729 for thread 1 is in sequence #76627
  28. Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
  29. cancel
  30. Media recovery cancelled.
  31. SQL> alter database open resetlogs;
  32. Database altered.
  33. SQL> select status from v$instance;
  34. STATUS
  35. ------------
  36. OPEN

截图如下所示

使用了隐藏参数_allow_resetlogs_corruption后,需要从参数文件(pfile或spfile中)移除隐藏参数,并对数据库进行导入导出比较好,不过此处都是测试数据库,重要性不是很高。在此忽略这些步骤。

参考资料:

http://zionw.blog.163.com/blog/static/9985959200911111181377/

http://blog.itpub.net/751371/viewspace-709644

http://hirtom.blog.163.com/blog/static/31182683200751204727172/

RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例相关推荐

  1. oracle ora 19698,RMAN异机还原遭遇ORA-19698错误案例

    实验环境: 操作系统    :Oracle Linux Server release 5.7 64 bit 数据库版本:Oracle Database 10g Release 10.2.0.4.0 - ...

  2. linux dump命令 异机,Oracle 11.2.0.4 从单实例,使用RMAN 异机恢复到RAC

    Oracle 11.2.0.4从单实例,使用RMAN异机恢复到RAC 注意: (1)迁移的2个db版本版本要一致.包括小版本. (2)RMAN异机恢复的时候,db_name必须相同.如果说要想改成其他 ...

  3. centos7 mysql还原dmp_Linux平台下RMAN异机恢复总结

    下面总结.整理一下RMAN异机恢复这方面的知识点,这篇笔记在个人笔记里面躺了几年了,直到最近偶然被翻看到,遂整理.总结一下.如下所示,个人将整个RMAN异机恢复分为准备工作和操作步骤两大部分.当然,准 ...

  4. Oracle 单实例 迁移到 RAC 实例 -- 使用RMAN 异机恢复

    Oracle 官网有关单实例迁移到RAC的一个步骤说明: How to Convert 10g Single-Instance database to 10g RAC using Manual Con ...

  5. Oracle 运维篇+RAC集群转单实例/RMAN异机恢复/RMAN迁移/RMAN备份恢复操作概要

    说明:本文为Oracle RAC集群转单实例/RMAN异机恢复/RMAN迁移/RMAN备份恢复操作概要方便用户查阅 温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化 说 ...

  6. RMAN异机恢复步骤

    RMAN是DBA日常工作非常常用的工具,RMAN的应用场景大概有数据备份恢复.数据迁移等.我们不常用本机RMAN恢复,因为在实际生产中RMAN备份通常是用于异机恢复,比如数据迁移,DG搭建,恢复备份库 ...

  7. oracle rman异机恢复

      Oracle源主机 Oracle目标主机 主机平台 CentOS6.2(final) CentOs6.2(FInal) 主机名 vick rman IP地址 192.168.1.11 192.16 ...

  8. RMAN异机恢复步骤及故障处理

    一.測试机安装OS+Oracle Software.包含配置oracle用户.组和环境变量(略) 二.開始异机恢复 1. 复制源库最新备份集.初始化參数.password文件到測试机 [oracle@ ...

  9. [RMAN]异机恢复实验

    一.        准备工作 1.     环境设定 源库: IP 192.168.131.100   SID:orcl 目标库: IP 192.168.131.101 安装与源库相同版本数据库软件( ...

最新文章

  1. 凭什么还能独吞iPhone 8的“芯”?
  2. C语言如何使用函数交换两个变量的值
  3. sqlmap 相关参数
  4. win8计算机安全模式,安全模式,详细教您Win8怎么进入安全模式
  5. 一句话证明你是产品经理
  6. 2018中国国际大数据大会专属报名通道(免费)开通啦!
  7. 去除vue路由跳转地址栏后的哈希值#
  8. sim800a指令_SIM800A模块进行HTTP的GET和POST操作
  9. java sdk qq登录授权_社会化登录分享-QQ SDK接入
  10. 程序员要实现财富自由,“出海”这条路该怎么走?
  11. 什么是OLAP?主流八大开源OLAP技术架构对比
  12. 【DSGN 解读】用于三维目标检测的深度立体几何网络
  13. Android 设置桌面背景
  14. Form表单提交数据的几种方式
  15. 女大学生的一天(男生勿看)
  16. huyuhang-python-day03
  17. 2013年度对话《3S 新闻周刊》
  18. 七夕送什么礼物会让对方惊喜呢!2022最全情人节礼物指南
  19. Android项目中接入网易云信聊天
  20. 静息状态脑电图节律和地形分析的建议

热门文章

  1. java 文件名 类名_java文件名为什么要与类名相同
  2. eemd优缺点_基于EEMD的信号处理方法分析和实现
  3. vb不能插入png图片_收藏备用!!VBA操作图片【插入导出删除】
  4. 计算机系统的组成doc,计算机系统由(组成.doc
  5. java创建response对象_javaweb入门-----request与response的作用
  6. Node.js npm
  7. SpringBoot @SpringBootApplication
  8. python threading.Barrier
  9. D3 Geographies
  10. docker 配置ssh