欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

OMF下Restore Oracle Datafile的优先级问题

程序员文章站 2024-01-12 10:03:22
...

OMF 即Oracle Managed Files?? 下管理的数据文件,如果 原数据文件存在 则会restore 到原数据文件的位置,如果不存在 则会restore到db_create_file_dest ?指向的位置,详见如下测试: restore的优先级如下: If SET NEWNAME is specified, RMAN will use tha

OMF 即Oracle Managed Files?? 下管理的数据文件,如果 原数据文件存在 则会restore 到原数据文件的位置,如果不存在 则会restore到db_create_file_dest ?指向的位置,详见如下测试:

restore的优先级如下:

  1. If “SET NEWNAME” is specified, RMAN will use that name for restore.
  2. If the original file exists, RMAN will use the original filename for restore.
  3. If the DB_CREATE_FILE_DEST is set, RMAN will use the diskgroup name specified.
  4. If no DB_CREATE_FILE_DEST is set and the original file does not exist, then RMAN will create another name
  5. for that file in the original disk group. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?askmaclean.com

注意 只要 一旦使用“DB_CREATE_FILE_DEST有值” restore过数据文件,则 控制文件内容将被”污染” 变成指向新的DB_CREATE_FILE_DEST的文件位置。

SQL> show parameter db_create_file_dest
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
db_create_file_dest string
C:\APP\XIANGBLI\ORADATA
SQL> create tablespace test_omf datafile size 5M;
表空间已创建。
SQL> select name from v$datafile;
NAME
-----------------------------------------------------------------------------
C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSTEM01.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\EXAMPLE01.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSAUX01.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\MACLEAN1.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\UNDOTBS01.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\USERS01.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART1.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART2.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\LOW_COST_STORE.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\SOURCE_TBS.DBF
C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00011
NAME
-----------------------------------------------------------------------------
C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00012
C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_USERS_93RDWOBL_.DBF
C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
已选择 14 行。
C:\Users\xiangbli>mkdir C:\APP\XIANGBLI\ORADATA1
SQL> alter system set db_create_file_dest='C:\APP\XIANGBLI\ORADATA1';
系统已更改。
RMAN> alter tablespace test_omf offline;
已处理语句
RMAN> backup tablespace test_omf;
RMAN> report schema;
db_unique_name 为 MACLEAN 的数据库的数据库方案报表
永久数据文件列表
===========================
文件大小 (MB) 表空间 回退段数据文件名称
---- -------- -------------------- ------- ------------------------
1 1117 SYSTEM *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSTEM01.DBF
2 358 EXAMPLE *** C:\APP\XIANGBLI\ORADATA\MACLEAN\EXAMPLE01.DBF
3 1390 SYSAUX *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSAUX01.DBF
4 10 ILM_DATA *** C:\APP\XIANGBLI\ORADATA\MACLEAN\MACLEAN1.DBF
5 725 UNDOTBS1 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\UNDOTBS01.DBF
6 32763 USERS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\USERS01.DBF
7 20 ILM_PART1 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART1.DBF
8 20 ILM_PART2 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART2.DBF
9 40 LOW_COST_STORE *** C:\APP\XIANGBLI\ORADATA\MACLEAN\LOW_COST_STORE.DBF
10 10 SRC_TBS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SOURCE_TBS.DBF
11 0 NONOMF *** C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00011
12 0 LLV *** C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00012
13 10 USERS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_USERS_93RDWOBL_.DBF
14 0 TEST_OMF *** C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
RMAN> restore tablespace test_omf;
启动 restore 于 22-9月 -13
使用通道 ORA_DISK_1
正在略过数据文件 14; 已还原到文件 C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
没有完成还原; 所有文件均为只读或脱机文件或者已经还原
完成 restore 于 22-9月 -13
RMAN> restore tablespace test_omf force;
启动 restore 于 22-9月 -13
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00014 还原到 C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
通道 ORA_DISK_1: 正在读取备份片段 C:\APP\XIANGBLI\FAST_RECOVERY_AREA\MACLEAN\BACKUPSET\2013_09_22\O1_MF_NNNDF_TAG20130922T140621_93X26Y00_.BKP
通道 ORA_DISK_1: 段句柄 = C:\APP\XIANGBLI\FAST_RECOVERY_AREA\MACLEAN\BACKUPSET\2013_09_22\O1_MF_NNNDF_TAG20130922T140621_93X26Y00_.BKP 标记 = TAG20130922T14062
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
完成 restore 于 22-9月 -13
C:\Users\xiangbli>del C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
这里还原到了C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF,由于数据文件本身存在
C:\Users\xiangbli>rman target /
恢复管理器: Release 12.1.0.1.0 - Production on 星期日 9月 22 14:07:21 2013
Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved.
已连接到目标数据库: MACLEAN (DBID=1694338843)
RMAN> restore tablespace test_omf;
启动 restore 于 22-9月 -13
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=20 设备类型=DISK
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00014 还原到 C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
通道 ORA_DISK_1: 正在读取备份片段 C:\APP\XIANGBLI\FAST_RECOVERY_AREA\MACLEAN\BACKUPSET\2013_09_22\O1_MF_NNNDF_TAG20130922T140621_93X26Y00_.BKP
通道 ORA_DISK_1: 段句柄 = C:\APP\XIANGBLI\FAST_RECOVERY_AREA\MACLEAN\BACKUPSET\2013_09_22\O1_MF_NNNDF_TAG20130922T140621_93X26Y00_.BKP 标记 = TAG20130922T14062
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
完成 restore 于 22-9月 -13
C:\Users\xiangbli>dir C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X25VFH_.DBF
 驱动器 C 中的卷是 System
 卷的序列号是 C23A-ECDA
 C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE 的目录
找不到文件
C:\Users\xiangbli>dir C:\APP\XIANGBLI\ORADATA1\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X28YSV_.DBF
 驱动器 C 中的卷是 System
 卷的序列号是 C23A-ECDA
 C:\APP\XIANGBLI\ORADATA1\MACLEAN\DATAFILE 的目录
2013/09/22 14:07 5,251,072 O1_MF_TEST_OMF_93X28YSV_.DBF
 1 个文件 5,251,072 字节
 0 个目录 84,377,939,968 可用字节
RMAN> report schema;
使用目标数据库控制文件替代恢复目录
db_unique_name 为 MACLEAN 的数据库的数据库方案报表
永久数据文件列表
===========================
文件大小 (MB) 表空间 回退段数据文件名称
---- -------- -------------------- ------- ------------------------
1 1117 SYSTEM *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSTEM01.DBF
2 358 EXAMPLE *** C:\APP\XIANGBLI\ORADATA\MACLEAN\EXAMPLE01.DBF
3 1390 SYSAUX *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SYSAUX01.DBF
4 10 ILM_DATA *** C:\APP\XIANGBLI\ORADATA\MACLEAN\MACLEAN1.DBF
5 725 UNDOTBS1 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\UNDOTBS01.DBF
6 32763 USERS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\USERS01.DBF
7 20 ILM_PART1 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART1.DBF
8 20 ILM_PART2 *** C:\APP\XIANGBLI\ORADATA\MACLEAN\ILM_PART2.DBF
9 40 LOW_COST_STORE *** C:\APP\XIANGBLI\ORADATA\MACLEAN\LOW_COST_STORE.DBF
10 10 SRC_TBS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\SOURCE_TBS.DBF
11 0 NONOMF *** C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00011
12 0 LLV *** C:\APP\XIANGBLI\PRODUCT\12.1.0\DBHOME_2\DATABASE\MISSING00012
13 10 USERS *** C:\APP\XIANGBLI\ORADATA\MACLEAN\DATAFILE\O1_MF_USERS_93RDWOBL_.DBF
14 0 TEST_OMF *** C:\APP\XIANGBLI\ORADATA1\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X28YSV_.DBF
这次还原到了C:\APP\XIANGBLI\ORADATA1\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X28YSV_.DBF
C:\Users\xiangbli>del C:\APP\XIANGBLI\ORADATA1\MACLEAN\DATAFILE\O1_MF_TEST_OMF_93X2MBCN_.DBF

Related posts:

  1. 【Oracle Database 12c】RMAN新特性
  2. 【故障诊断】RMAN-06026与ABSOLUTE_FUZZY_CHANGE#
  3. fast incremental backup failed on standby database
  4. 11g新特性recover corruption list
  5. Exadata offload incremental backup
  6. 【Oracle数据恢复】解决ORA-01578错误一例
  7. Oracle Controlfile控制文件中记录的信息片段sections
  8. cell smart restore from backup等待事件
  9. Duplicate standby database from active database
  10. 11g Release 2 enhanced Tablespace Point In Time Recovery