Operating system — Oracle Linux 6
Database — 11G R2
Today i show you how to duplicate database which is in ASM to non ASM on different host.
Target — database with ASM which is used to create another database on another host.
Destination — database which located on file system will be created from target.
For duplication there is two method: from backup and from active database, here is described active database duplication.
On destination already installed Oracle Software.
1) transfer password file from target to destination.
2) on destination register listener with static registration.
3) on Target, create pfile, transfer it to destination host and modify next parameters:
*.audit_file_dest =/u01/app/oracle/testdup/adump *.db_name ="testdup" *.instance_name =testdup *.control_files =/u01/app/oracle/testdup/control01.ctl *.db_file_name_convert =("+DATA","/u01/app/oracle/testdup") *.log_file_name_convert =("+DATA","/u01/app/oracle/testdup") *.undo_management =AUTO *.undo_tablespace='UNDOTBS1' *.db_block_size=8192
4) on destination, create corresponding directories with oracle O/S user.
5) export new sid and start instance;
export ORACLE_SID=testdup sqlplus / as sysdba startup nomount pfile=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/inittestdup.ora;
6) on destination:
rman target sys/password@orcl auxiliary sys/password@testdup duplicate database to testdup from active database;
You can get some errors , cann’t restore datafile & onlineredo log files, in this case you need to create directory ,It should be indicate.
That’s all, good luck.