Steps for RMAN DUPLICATE FROM ACTIVE
Single instance to RAC
Migrate a single instance database TSTDEV to a two node RAC database TSTPRD
Source database
Database name TSTDEV
Single instance
Version 11.2.0.3
Hostname tstqadb
Filesystem ASM
Target database
Database name TSTPRD
RAC Two nodes
Version 11.2.0.3
ORACLE_HOME /tst/oracle/product/11.2.0/db1
GI_HOME /tst/grid/11.2.0/
Hostname lmstg01/lmstg02
Filesystem ASM
Diskgroup +DG01
Note: For the target already have my Oracle clusterware in place on lmstg01/lmstg02.
An empty database with two instances, controlfiles, spfiles and diskgroup – +DG01
is already in place.
Prepare auxiliary
instance TSTPRD1 on lmstg01
Stop the cluster database
srvctl stop
database -d TSTPRD
Start the TSTPRD1 instance which runs on lmstg01
|
srvctl start instance -d TSTPRD
-i TSTPRD1
|
Set
following parameters on TSTPRD1 instance:
|
|
. oraenv TSTPRD1
sqlplus / as sysdba
alter system set db_name=TSTPRD
scope=spfile;
alter system set
db_create_file_dest='+DG01';
alter system set
cluster_database=false scope=spfile;
shutdown immediate
startup nomount
|
Enable static registration for TSTPRD1 -LISTENER
Add following entries into listener.ora file in GI_HOME
on lmstg01
Edit /tst/grid/11.2.0/network/admin/listener.ora and add following
lines:
|
|
SID_LIST_LISTENER =
(SID_LIST =
)
(SID_DESC
=
(SID_NAME
= TSTPRD1)
(ORACLE_HOME
= /tst/oracle/product/11.2.0/db1)
(GLOBAL_DBNAME
= TSTPRD)
)
)
|
Verify ORACLE_HOME is set to TSTPRD database home
Edit TNS entries for BOTH auxiliary and target tnsnames.ora file to add below lines
|
|
TSTDEV =
(DESCRIPTION
=
(ADDRESS
= (PROTOCOL = TCP)(HOST = tstqadb)(PORT = 1521))
(CONNECT_DATA
=
(SERVER
= DEDICATED)
(SERVICE_NAME
= TSTDEV)
)
)
TSTPRD1 =
(DESCRIPTION
=
(ADDRESS
= (PROTOCOL = TCP)(HOST = lmstg01)(PORT = 1521))
(CONNECT_DATA
=
(SERVER
= DEDICATED)
(SERVICE_NAME
= TSTPRD)
)
)
|
Create a password file for auxiliary instance TSTPRD1 on lmstg01
Password file is
needed for
both auxiliary and target connections
as Connections
to both instances will be through listener and using TNS
|
|
. oraenv
TSTPRD1
cd $ORACLE_HOME/dbs
orapwd password=sys
file=orapwTSTPRD1
|
Test connectivity to auxiliary and target instance from BOTH hosts using TNS
|
|
sqlplus sys/sys@TSTPRD1
as sysdba
sqlplus sys/sys@TSTDEV as
sysdba
|
From auxiliary host start RMAN and run the DUPLICATE command
|
|
. oraenv
TSTPRD1
rman target sys/sys@TSTDEV
auxiliary sys/sys@tstprd1
RMAN>run{
DUPLICATE
TARGET DATABASE TO TSTPRD
FROM
ACTIVE DATABASE;
}
|
Change the TSTPRD database to be cluster database again
. oraenv TSTPRD1
sqlplus / as sysdba
alter system set cluster_database=true scope=spfile;
shutdown immediate
Using srvctl start TSTPRD database
|
|
srvctl start db -d TSTPRD
|
No comments:
Post a Comment