duplicate搭建DG (Backup-based duplication)
源库:
run
{
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
backup as compressed backupset database;
sql 'alter system archive log current';
release channel ch2;
release channel ch3;
}
查询出数据文件路径
select 'set newname for datafile '||FILE_ID||' to '||file_name||';' from dba_data_files;
select 'set newname for datafile '||FILE_ID||' to '||file_name||';' from dba_TEMP_files;
使用duplicate,要在备库有跟主库一样的备份目录并且有备份集在里面,在主库运行命令。
在备库上配置好pfile和standby controlfile
备库操作:
auxorcl是目标库tnsname。
rman target sys/oracle@orcl auxiliary sys/oracle@auxorcl;
run
{
set newname for datafile 1 to '/u01/app/oracle/oradata/auxorcl/system01.dbf';
set newname for datafile 2 to '/u01/app/oracle/oradata/auxorcl/sysaux01.dbf';
set newname for datafile 3 to '/u01/app/oracle/oradata/auxorcl/undotbs01.dbf';
set newname for datafile 4 to '/u01/app/oracle/oradata/auxorcl/users01.dbf';
set newname for datafile 5 to '/u01/app/oracle/oradata/auxorcl/test.dbf';
set newname for tempfile 1 to '/u01/app/oracle/oradata/auxorcl/temp01.dbf';
duplicate target database for standby;
}