前不久因工作需要使用RMAN异机恢复,很基础也很具有代表性和普遍性,希望对需要的人有所帮助。

具体过程如下:

先拷贝原库的口令文件和参数文件到备库。

然后使用如下脚本对原库进行备份:

run {

allocate channel d1 type disk;

allocate channel d2 type disk;

backup full database format'c:\rmanbak\date%Y%m%d_full_%d_%s_%p_%u.bak'

tag='full' include current controlfile;

sql 'alter system archive log current';

backup archivelog all format'c:\rmanbak\date%Y%m%d_archivelog_%d_%s_%p_%u.bak' delete all input;

release channel d2;

release channel d1;

}

备份完成后把这些备份文件全部拷到备库中已经事先创建好的目录C:\rmanbak\,注意一定要拷全。

由于我异机恢复的时候的数据文件是和原库不同的目录所以在恢复时使用如下的脚本:

run{

set newname for datafile  1 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTEM01.DBF";

set newname for datafile  2 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOTBS01.DBF";

set newname for datafile  3 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAUX01.DBF";

set newname for datafile  4 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS01.DBF";

set newname for datafile  5 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\OEEDATA.DBF";

set newname for datafile  6 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\OEEINDEX.DBF";

set newname for datafile  7 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SMLDATA.DBF";

set newname for datafile  8 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SMLINDX.DBF";

set newname for datafile  9 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\MEDDATA.DBF";

set newname for datafile  10 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\MEDINDX.DBF";

set newname for datafile  11 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\LRGDATA.DBF";

set newname for datafile  12 to"C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\LRGINDX.DBF";

restore database;

switch datafile all;

}

在执行这一步是总是报错如下:

Starting restore at 01-JUN-11

using channel ORA_DISK_1

RMAN-00571:=================================================

RMAN-00569: ===== ERROR MESSAGE STACKFOLLOWS ====

RMAN-00571:==========================================

RMAN-03002: failure of restore command at06/01/2011 21:21:28

RMAN-06026: some targets notfound - aborting restore

RMAN-06023: no backup or copy ofdatafile 3 found to restore

RMAN-06023: no backup or copy of datafile2 found to restore

RMAN-06023: no backup or copy of datafile1 found to restore

  提示找不到备份集,我的备份是全备的,而且不存在拷贝不完全的情况啊,我又从原库备份了一份数据,还是不行。百思不得其解,也曾经怀疑是不是controlfile和backupset是不是不一致啊,controlfile过旧的原因呢,controlfile就是从全备中恢复过来的应该不是这个原因。最后,发现在恢复过程中RMAN提示信息,只是查找C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_16_1_0GOOMADP.BAK这样一个backupset,其他的rman备份就没有查到,使用listbackup列出rman的备份集,如下:

RMAN> list backup;

备份集列表

===================

BS 关键字  类型 LV 大小      设备类型 经过时间 完成时间

------- ---- -- ---------- ----------------------- ----------

16      Full   2.53G      DISK        00:03:47     11-11月-13

BP 关键字: 16   状态:AVAILABLE  已压缩: NO  标记: FULL

段名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_16_1_0GOOMADP.BAK

备份集 16 中的数据文件列表

文件 LV 类型 Ckp SCN    Ckp 时间   名称

---- -- ---- ---------- ---------- ----

1      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\SYSTEM01.DBF

4      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\USERS01.DBF

6      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEEIND

EX.DBF

7      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\SMLDAT

A.DBF

9      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\MEDDAT

A.DBF

12     Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\LRGIND

X.DBF

  果然其他的backupset都没有认到,使用RMAN>catalog start with 'C:\rmanbak\';手动把这些没有追加进去的backupset追加进去。

RMAN> catalog start with 'C:\rmanbak\';

搜索与样式 C:\rmanbak\ 匹配的所有文件

数据库未知文件的列表

=====================================

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_20_1_0KOOMALD.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_21_1_0LOOMALD.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_22_1_0MOOMANT.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_17_1_0HOOMADP.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_18_1_0IOOMAL5.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_19_1_0JOOMAL8.BAK

是否确实要将上述文件列入目录 (输入 YES 或 NO)? yes

正在编制文件目录...

目录编制完毕

已列入目录的文件的列表

=======================

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_20_1_0KOOMALD.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_21_1_0LOOMALD.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_22_1_0MOOMANT.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_17_1_0HOOMADP.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_18_1_0IOOMAL5.BAK

文件名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_19_1_0JOOMAL8.BAK

再次查看ok了。

RMAN> list backup;

备份集列表

===================

BS 关键字  类型 LV 大小      设备类型 经过时间 完成时间

------- ---- -- ---------- ----------------------- ----------

16      Full   2.53G      DISK        00:03:47     11-11月-13

BP 关键字: 16   状态:AVAILABLE  已压缩: NO  标记: FULL

段名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_16_1_0GOOMADP.BAK

备份集 16 中的数据文件列表

文件 LV 类型 Ckp SCN    Ckp 时间   名称

---- -- ---- ---------- ---------- ----

1      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\SYSTEM01.DBF

4      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\USERS01.DBF

6      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEEIND

EX.DBF

7      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\SMLDAT

A.DBF

9      Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\MEDDAT

A.DBF

12     Full 3497054673 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\LRGIND

X.DBF

BS 关键字  大小       设备类型占用时间 完成时间

------- ---------- ----------------------- ----------

17      830.54M   DISK        00:00:00     11-11月-13

BP 关键字: 17   状态:AVAILABLE  已压缩: NO  标记:TAG20131111T100012

段名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_20_1_0KOOMALD.BAK

备份集 17 中的已存档日志列表

Thrd Seq    低 SCN   短时间    下一个 SCN  下一次

---- ------- ---------- ---------- ---------- ---------

1   90328   3496186914 10-11月-13 3496226142 11-11月-13

1   90329   3496226142 11-11月-13 3496266075 11-11月-13

1   90330   3496266075 11-11月-13 3496299131 11-11月-13

1   90331   3496299131 11-11月-13 3496299548 11-11月-13

1   90332   3496299548 11-11月-13 3496301290 11-11月-13

1   90333   3496301290 11-11月-13 3496301703 11-11月-13

1   90334   3496301703 11-11月-13 3496302828 11-11月-13

1   90335   3496302828 11-11月-13 3496304640 11-11月-13

1   90336   3496304640 11-11月-13 3496309269 11-11月-13

1   90337   3496309269 11-11月-13 3496349250 11-11月-13

1   90338   3496349250 11-11月-13 3496388324 11-11月-13

1   90339   3496388324 11-11月-13 3496427847 11-11月-13

1   90340   3496427847 11-11月-13 3496467668 11-11月-13

1   90341   3496467668 11-11月-13 3496506886 11-11月-13

1   90342   3496506886 11-11月-13 3496546773 11-11月-13

1   90343   3496546773 11-11月-13 3496585866 11-11月-13

1   90344   3496585866 11-11月-13 3496626275 11-11月-13

BS 关键字  大小       设备类型占用时间 完成时间

------- ---------- ----------------------- ----------

18      759.59M   DISK        00:00:00     11-11月-13

BP 关键字: 18   状态:AVAILABLE  已压缩: NO  标记:TAG20131111T100012

段名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_21_1_0LOOMALD.BAK

备份集 18 中的已存档日志列表

Thrd Seq    低 SCN   短时间    下一个 SCN  下一次

---- ------- ---------- ---------- ---------- ---------

1   90345   3496626275 11-11月-13 3496650977 11-11月-13

1   90346   3496650977 11-11月-13 3496688239 11-11月-13

1   90347   3496688239 11-11月-13 3496731128 11-11月-13

1   90348   3496731128 11-11月-13 3496773991 11-11月-13

1   90349   3496773991 11-11月-13 3496804613 11-11月-13

1   90350   3496804613 11-11月-13 3496810746 11-11月-13

1   90351   3496810746 11-11月-13 3496823955 11-11月-13

1   90352   3496823955 11-11月-13 3496825757 11-11月-13

1   90353   3496825757 11-11月-13 3496830485 11-11月-13

1   90354   3496830485 11-11月-13 3496832351 11-11月-13

1   90355   3496832351 11-11月-13 3496868065 11-11月-13

1   90356   3496868065 11-11月-13 3496909832 11-11月-13

1   90357   3496909832 11-11月-13 3496952274 11-11月-13

1   90358   3496952274 11-11月-13 3496994756 11-11月-13

1   90359   3496994756 11-11月-13 3497037939 11-11月-13

1   90360   3497037939 11-11月-13 3497053401 11-11月-13

1   90361   3497053401 11-11月-13 3497053423 11-11月-13

1   90362   3497053423 11-11月-13 3497060228 11-11月-13

BS 关键字  大小       设备类型占用时间 完成时间

------- ---------- ----------------------- ----------

19      36.50K    DISK        00:00:00     11-11月-13

BP 关键字: 19   状态:AVAILABLE  已压缩: NO  标记:TAG20131111T100012

段名:C:\RMANBAK\DATE_2013%MTEST_ARCHIVELOG_TEST_22_1_0MOOMANT.BAK

备份集 19 中的已存档日志列表

Thrd Seq    低 SCN   短时间    下一个 SCN  下一次

---- ------- ---------- ---------- ---------- ---------

1   90363   3497060228 11-11月-13 3497060260 11-11月-13

BS 关键字  类型 LV 大小      设备类型 经过时间 完成时间

------- ---- -- ---------- ----------------------- ----------

20      Full   2.80G      DISK        00:00:00     11-11月-13

BP 关键字: 20   状态:AVAILABLE  已压缩: NO  标记: FULL

段名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_17_1_0HOOMADP.BAK

备份集 20 中的数据文件列表

文件 LV 类型 Ckp SCN    Ckp 时间   名称

---- -- ---- ---------- ---------- ----

2      Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\UNDOTBS01.DBF

3      Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEENET

CH\SYSAUX01.DBF

5      Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\OEEDAT

A.DBF

8      Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\SMLIND

X.DBF

10     Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\MEDIND

X.DBF

11     Full 3497054687 11-11月-13C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\LRGDAT

A.DBF

BS 关键字  类型 LV 大小      设备类型 经过时间 完成时间

------- ---- -- ---------- ----------------------- ----------

21      Full   7.83M      DISK        00:00:00     11-11月-13

BP 关键字: 21   状态:AVAILABLE  已压缩: NO  标记: FULL

段名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_18_1_0IOOMAL5.BAK

包括的控制文件: CkpSCN: 3497060126   Ckp 时间: 11-11月-13

BS 关键字  类型 LV 大小      设备类型 经过时间 完成时间

------- ---- -- ---------- ----------------------- ----------

22      Full   80.00K     DISK        00:00:00     11-11月-13

BP 关键字: 22   状态:AVAILABLE  已压缩: NO  标记: FULL

段名:C:\RMANBAK\DATE_2013%MTEST_FULL_TEST_19_1_0JOOMAL8.BAK

包含的 SPFILE: 修改时间: 09-11月-13

再次尝试restore database没有上述错误。

使用recover database完成,但报一个错误:

RMAN-06054: media recovery requestingunknown archived log for thread 1 with sequence 9 and starting SCN of 823627

recover databaseuntil sequence 90364避免了此问题,当然我们可以使用set until scn或者set until time 。来避免提醒恢复到最后一个未知的scn号。

使用sql>alter database open resetlogs;还是报错。

这个错误为ORA-00344:unable to re-create online log

使用网上提供的方法尝试:

如果数据库正常关闭:

用命令清空日志组的方法:

1. 已归档,重建该日志

SQL> alter database clearlogfile group 2;

2. 归档模式下如果没有归档

SQL> alter database clearunarchived logfile group 2

依然不行。

接着执行如下操作:

SQL> select group#,status,member fromv$logfile;

GROUP#       MEMBER

----------        ------------------------------------------------------

3                   C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LOG

2                   C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\REDO02.LOG

1                    C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\REDO01.LOG

SQL> selectgroup#,thread#,members,status from v$log;

GROUP#    THREAD#    MEMBERS STATUS

---------- ---------- --------------------------

1          1          1 CLEARING_CURRENT

3          1          1 INACTIVE

2          1          1 INACTIVE

SQL> alter database rename file'C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\R

EDO01.LOG' to'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO01.LOG';

数据库已更改。

SQL> alter database rename file'C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\R

EDO02.LOG' to'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO02.LOG';

数据库已更改。

SQL> alter database rename file'C:\ORACLE_STD\PRODUCT\10.2.0\ORADATA\TEST\R

EDO03.LOG' to'C:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LOG';

数据库已更改。

SQL> alter database open resetlogs;

alter database open resetlogs

*

第 1 行出现错误:

ORA-01092: ORACLE实例终止。强制断开连接

Fri Nov 15 14:13:52 2013

MTTR advisory is disabled becauseFAST_START_MTTR_TARGET is not set

Fri Nov 15 14:13:52 2013

ARC0: STARTING ARCH PROCESSES

Fri Nov 15 14:13:52 2013

SMON: enabling cache recovery

Fri Nov 15 14:13:52 2013

ARC2: Archival started

ARC2 started with pid=20, OS id=4156

Fri Nov 15 14:13:52 2013

Errors in filec:\oracle\product\10.2.0\admin\test\udump\test_ora_5904.trc:

ORA-00704: 引导程序进程失败

ORA-39700:必须用 UPGRADE 选项打开数据库

Fri Nov 15 14:13:52 2013

Error 704 happened during db open,shutting down database

USER: terminating instance due to error704

ARC1 started with pid=19, OS id=5352

Fri Nov 15 14:13:53 2013

ARC0: STARTING ARCH PROCESSES COMPLETE

Fri Nov 15 14:13:53 2013

ARC0: Becoming the 'no FAL' ARCH

ARC0: Becoming the 'no SRL' ARCH

Fri Nov 15 14:13:53 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_pmon_3456.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_reco_4636.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_mman_5880.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_psp0_5936.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_lgwr_4820.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_smon_3068.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_dbw0_5212.trc:

ORA-00704: bootstrap process failure

Fri Nov 15 14:13:54 2013

Errors in filec:\oracle\product\10.2.0\admin\test\bdump\test_ckpt_4836.trc:

ORA-00704: bootstrap process failure

这里报这个升级过程中经常报的错误,跟我数据库异机迁移版本不同可能有关系。

根据提示使用:alter database open upgrade;数据库正常打开,最后执行catupgrd.sql一切正常。

异机恢复 RMAN-06023: no backup or copy of datafile 17 found to restore的更多相关文章

  1. RMAN-06023: no backup or copy of datafile 6 found to restore

    一:问题描述 我用指定备份集恢复时,报错: RMAN> run { 2> shutdown immediate; 3> startup mount; 4> allocate c ...

  2. RMAN-06023: no backup or copy of datafile 1 found to restore

    在ORACLE 10g数据库还原过程遭遇RMAN-06023: no backup or copy of datafile x found to restore,具体情况如下所示 .......... ...

  3. RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例

    测试环境:     操作系统  :  Red Hat Enterprise Linux ES release 4 (Nahant Update 4)   VMWARE     数据库     :  O ...

  4. Hyper-V安装Oracle Linux6_4 Oracle db 12c并使用rman做异机恢复

    本文记录在Windows Server 2012 R2上安装Oracle Enterprise Linux 6.4以及使用RMAN进行进行异机恢复的过程. Windows服务器增加Hyper-V功能 ...

  5. 使用不同用户对Oracle数据库进行异机恢复,失败,错误:Backup file not found in NetBackup catalog

    最近做某数据库恢复演练,数据库版本是10.2.0.4,恢复控制文件一直报错,报错如下,经过反复折腾,原来恢复机上oracle用户不是oracle导致(我的是oraclev4),查看源库oracle用户 ...

  6. RMAN - 备份异机恢复

    OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...

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

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

  8. oracle rman异机恢复

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

  9. RMAN 备份异机恢复 并创建新DBID

    测试平台信息: Oracle:11gR2 操作系统:Redhat 5.5 Target DB:dave   几点说明: (1)RMAN 异机恢复的时候,db_name必须相同. 如果说要想改成其他的实 ...

随机推荐

  1. Linux环境给文件重命名

    Linux环境给文件重命名时,如果重命名后的文件名称与当前路径下已存在的文件名称相同,则重命名的文件会覆盖相同名称的文件内容: 例如:新建文件testfile1,内容为mytest: 新建文件test ...

  2. Sticky Footer (让页脚永远停靠在页面底部,而不是根据绝对位置)

    <!doctype html><html> <head> <meta charset="UTF-8"> <meta name= ...

  3. GridView自定义之前后效果对比

  4. chromium 安装 pepper flash player

    打开终端,输入以下命令即可安装: 1. sudo apt-get update 2. sudo apt-get install chromium-browser 3. sudo apt-get ins ...

  5. 如何避免后台IO高负载造成的长时间JVM GC停顿(转)

    译者著:其实本文的中心意思非常简单,没有耐心的读者建议直接拉到最后看结论部分,有兴趣的读者可以详细阅读一下. 原文发表于Linkedin Engineering,作者 Zhenyun Zhuang是L ...

  6. 【题解】【BT】【Leetcode】Binary Tree Level Order Traversal

    Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...

  7. OpenFlow Switch学习笔记(三)——Flow Tables

    这次我们主要讨论下OpenFlow Switch的核心组件之一——Flow Tables,以了解其内部的 matching 以及 action handling 机制.下文将会分为几个部分来逐步详述O ...

  8. C++ struct 定义及初始化

    1 定义: struct Book{ unsigned int bookNo; string name; }; 2 初始化 struct的初始化分为三种:逐一赋值,顺序赋值,乱序赋值 //    逐一 ...

  9. HDU 1392 凸包

    Surround the Trees Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  10. jq中如何阻止元素的默认行为?

    阻止网页元素的默认行为: event.preventDefault(); 或者:return false;