使用RMAN复制活动数据库(文件路径不同)

OS:Oracle Linux 5u8
DB:11.2.0.4

路径相同的情况下,见:http://blog.itpub.net/22621861/viewspace-1431461/

1. 为辅助数据库创建密码文件(文件名必须以orapw开头)

点击(此处)折叠或打开

  1. orapwd file=$ORACLE_HOME/dbs/orapwnewdb password=oracle1 entries=3
2. 为辅助数据库创建临时参数文件
最好从目标数据库创建然后复制过去(前提是有相同的内存大小),以下参数有必要多确认


点击(此处)折叠或打开

  1. DB_NAME=jun
  2. DB_BLOCK_SIZE=8192
  3. DB_RECOVERY_FILE_DEST=/oracledata/fra
  4. DB_RECOVERY_FILE_DEST_SIZE=40G
  5. CONTROL_FILES='/oracledata/JUN/controlfile/control01.ctl', '/oracledata/fra/JUN/controlfile/control02.ctl'
  6. DB_FILE_NAME_CONVERT='/oradata/APR','/oracledata/JUN'
  7. LOG_FILE_NAME_CONVERT='/oradata/APR','oracledata/JUN','/oradata/fra/APR','/oracledata/fra/JUN'
  8. compatible=11.2.0.4.0
3. 为辅助数据库配置静态监听器

点击(此处)折叠或打开

  1. vi $ORACLE_HOME/network/admin/listener.ora

  2. SID_LIST_LISTENER =
  3.   (SID_LIST =
  4.     (SID_DESC =
  5.       (GLOBAL_DBNAME = jun)
  6.       (ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1)
  7.       (SID_NAME = jun)
  8.     )
  9.   )
4. 在辅助数据库服务器上创建目录,如果没有做这一步,可能触发如下报错,表示参数中指定的目录不存在:
ORA-17628: Oracle error 19505 returned by remote Oracle server

点击(此处)折叠或打开

  1. mkdir -p /oracledata/JUN/controlfile /oracledata/fra/JUN/controlfile
  2. mkdir -p /oracledata/JUN/datafile
5. 启动辅助数据库实例

点击(此处)折叠或打开

  1. startup nomount pfile=initjun.ora
6. 在目标数据库上使用RMAN

点击(此处)折叠或打开

  1. rman target sys/oracle@apr auxiliary sys/oracle@jun
  2. RMAN>
  3. run { allocate auxiliary channel a1 device type disk;
  4.       allocate auxiliary channel a2 device type disk;
  5.       allocate channel t1 type disk;
  6.       allocate channel t2 type disk;
  7.       duplicate target database to jun from active database;
  8. }
完成!

请使用浏览器的分享功能分享到微信等