首页 > 代码库 > oracle 11g 基于备份的rman duplicate

oracle 11g 基于备份的rman duplicate

基于备份的rman duplicate 命令来创建standby database
前提条件: 保证原库数据库的备份,归档对于standby 端是完全可见的,
这里假设原库和目标端数据文件,日志文件等所有文件存放结构完全相同;
配置主库,备库静态监听,主库处于归档模式,和force logging 


1.对主数据库进行必要的更改。
a. 启用 force logging。
b. 如果没有密码文件,则创建密码文件。
c. 创建备用 redo 日志。
d. 修改参数文件,使其适用于 Dataguard。


2. 确保 sql*net 连接正常。


3. 使用备份文件。
a. 创建密码文件
b. 为备用数据库(辅助数据库)创建初始化参数文件
c. 为数据库文件创建需要的装载点或文件夹
d. 连接至主数据库作为其目标数据库,以运行创建备用 ON STANDBY。



DUPLICATE TARGET DATABASE
 FOR STANDBY
 DORECOVER
 SPFILE
   #SET DB_FILE_NAME_CONVERT ‘‘, ‘‘    ----如果数据文件路径不同使用该参数来转换
   #SET LOG_FILE_NAME_CONVERT ‘‘, ‘‘   ----如果日志文件路径不同使用该参数来转换
   #SET SGA_MAX_SIZE 200M              ----设置 SGA 大小 
   #SET SGA_TARGET 125M
 SET "db_unique_name"="foou" COMMENT ‘‘Is a duplicate‘‘
 SET LOG_ARCHIVE_DEST_2="service=inst3 ASYNC REGISTER
 VALID_FOR=(online_logfile,primary_role)"
 SET FAL_SERVER="inst1" COMMENT "Is primary"
 NOFILENAMECHECK;


关键词解释:
dorecover :在restore完成后自动进行recover 操作
 NOFILENAMECHECK:因为主库和备库环境所有文件名都是一样的


如何理解上诉脚本内容:
rman 会自动从主库拷贝 spfile 到备库,并且使用该参数文件来启动备库的实例,
还原必要的数据文件和归档日志文件到备库主机上,然后进行recover 操作,but does not place it in manual or managed recovery mode;

oracle 11g 基于备份的rman duplicate