There are several methods that every one use for Non-RAC to RAC Conversion database .
Here iam going to use a "rconfig" utility for the conversion.
Steps:-
1> Convert from Non-ASM to ASM filesystem as per my previous post .
2> Go to ORACLE_HOME/assistants/rconfig/sampleXMLS
In the above path we get to see a file " convertToRac.xml "
3> Copy the above file to some location as below
cp $ORACLE_HOME/assistants/rconfig/sampleXMLS/convertToRac.xml /tmp/convert2RAC.xml
4> Change the following parameters in /tmp/convert2RAC.xml file
a) Database SID b) ASM SID c) ASM pwd d) Node names e) Listener port (accordingly)
Sample file:-
========================================================================
xml version="1.0" encoding="UTF-8"?
--n:RConfig xmlns:n="http://www.oracle.com/rconfig"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/rconfig"--
--n:ConvertToRAC--
--!-- Verify does a precheck to ensure all pre-requisites are met, before the conversion is attempted. Allowable values are: YES|NO|ONLY ----
--n:Convert verify="YES"--
--!--Specify current OracleHome of non-rac database for SourceDBHome ----
--n:SourceDBHome--/u01/app/oracle/product/10g/db_1--/n:SourceDBHome-----your source database home
--!--Specify OracleHome where the rac database should be configured. It can be same as SourceDBHome ----
--n:TargetDBHome--/u01/app/oracle/product/10g/db_1--/n:TargetDBHome-- ---your target database home
--!--Specify SID of non-rac database and credential. User with sysdba role is required to perform conversion ----
--n:SourceDBInfo SID="PROD"---------------your database name
--n:Credentials--
--n:User--sys--/n:User--
--n:Password--oracle--/n:Password--
--n:Role--sysdba--/n:Role--
--/n:Credentials--
--/n:SourceDBInfo--
--!--ASMInfo element is required only if the current non-rac database uses ASM Storage ----
--n:ASMInfo SID="+ASM1"---------------------your ASM Instance name
--n:Credentials--
--n:User--sys--/n:User--
--n:Password--oracle--/n:Password-- ----your ASM instance password
--n:Role--sysdba--/n:Role--
--/n:Credentials--
--/n:ASMInfo--
--!--Specify the list of nodes that should have rac instances running. LocalNode should be the first node in this nodelist. ----
--n:NodeList--
--n:Node name="rac1"/-------your rac1 hostname--n:Node name="rac2"/------your rac2 hostname
--/n:NodeList--
--!--Specify prefix for rac instances. It can be same as the instance name for non-rac database or different. The instance number will be attached to this prefix. ----
--n:InstancePrefix--PROD--/n:InstancePrefix-----your database name
--!--Specify port for the listener to be configured for rac database.If port="", alistener existing on localhost will be used for rac database.The listener will be extended to all nodes in the nodelist ----
--n:Listener port="1551"/-----listener port number
--!--Specify the type of storage to be used by rac database. Allowable values are CFS|ASM. The non-rac database should have same storage type. ----
--n:SharedStorage type="ASM"------your storage type
--!--Specify Database Area Location to be configured for rac database.If this field is left empty, current storage will be used for rac database. For CFS, this field will have directory path. ----
--n:TargetDatabaseArea-- --/n:TargetDatabaseArea------leave blank
--!--Specify Flash Recovery Area to be configured for rac database. If this field is left empty, current recovery area of non-rac database will be configured for rac database. If current database is not using recovery Area, the resulting rac database will not have a recovery area. ----
--n:TargetFlashRecoveryArea-- --/n:TargetFlashRecoveryArea---leave blank
--/n:SharedStorage--
--/n:Convert--
--/n:ConvertToRAC--
--/n:RConfig--
=================================================================================
5> After modifying the convert2RAC.xml file as above under /tmp/convert2RAC.xml , run rconfig tool as below
cd $ORACLE_HOME/bin
./rconfig /tmp/convert2RAC.xml
6> Change SID in /etc/oratab as PROD1 in rac1 m/c & PROD2 in rac2 m/c .
7> Finally run srvctl to configure the database
srvctl config database -d PROD
srvctl config database -d PROD
Thanks
Here iam going to use a "rconfig" utility for the conversion.
Steps:-
1> Convert from Non-ASM to ASM filesystem as per my previous post .
2> Go to ORACLE_HOME/assistants/rconfig/sampleXMLS
In the above path we get to see a file " convertToRac.xml "
3> Copy the above file to some location as below
cp $ORACLE_HOME/assistants/rconfig/sampleXMLS/convertToRac.xml /tmp/convert2RAC.xml
4> Change the following parameters in /tmp/convert2RAC.xml file
a) Database SID b) ASM SID c) ASM pwd d) Node names e) Listener port (accordingly)
Sample file:-
========================================================================
xml version="1.0" encoding="UTF-8"?
--n:RConfig xmlns:n="http://www.oracle.com/rconfig"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/rconfig"--
--n:ConvertToRAC--
--!-- Verify does a precheck to ensure all pre-requisites are met, before the conversion is attempted. Allowable values are: YES|NO|ONLY ----
--n:Convert verify="YES"--
--!--Specify current OracleHome of non-rac database for SourceDBHome ----
--n:SourceDBHome--/u01/app/oracle/product/10g/db_1--/n:SourceDBHome-----your source database home
--!--Specify OracleHome where the rac database should be configured. It can be same as SourceDBHome ----
--n:TargetDBHome--/u01/app/oracle/product/10g/db_1--/n:TargetDBHome-- ---your target database home
--!--Specify SID of non-rac database and credential. User with sysdba role is required to perform conversion ----
--n:SourceDBInfo SID="PROD"---------------your database name
--n:Credentials--
--n:User--sys--/n:User--
--n:Password--oracle--/n:Password--
--n:Role--sysdba--/n:Role--
--/n:Credentials--
--/n:SourceDBInfo--
--!--ASMInfo element is required only if the current non-rac database uses ASM Storage ----
--n:ASMInfo SID="+ASM1"---------------------your ASM Instance name
--n:Credentials--
--n:User--sys--/n:User--
--n:Password--oracle--/n:Password-- ----your ASM instance password
--n:Role--sysdba--/n:Role--
--/n:Credentials--
--/n:ASMInfo--
--!--Specify the list of nodes that should have rac instances running. LocalNode should be the first node in this nodelist. ----
--n:NodeList--
--n:Node name="rac1"/-------your rac1 hostname--n:Node name="rac2"/------your rac2 hostname
--/n:NodeList--
--!--Specify prefix for rac instances. It can be same as the instance name for non-rac database or different. The instance number will be attached to this prefix. ----
--n:InstancePrefix--PROD--/n:InstancePrefix-----your database name
--!--Specify port for the listener to be configured for rac database.If port="", alistener existing on localhost will be used for rac database.The listener will be extended to all nodes in the nodelist ----
--n:Listener port="1551"/-----listener port number
--!--Specify the type of storage to be used by rac database. Allowable values are CFS|ASM. The non-rac database should have same storage type. ----
--n:SharedStorage type="ASM"------your storage type
--!--Specify Database Area Location to be configured for rac database.If this field is left empty, current storage will be used for rac database. For CFS, this field will have directory path. ----
--n:TargetDatabaseArea-- --/n:TargetDatabaseArea------leave blank
--!--Specify Flash Recovery Area to be configured for rac database. If this field is left empty, current recovery area of non-rac database will be configured for rac database. If current database is not using recovery Area, the resulting rac database will not have a recovery area. ----
--n:TargetFlashRecoveryArea-- --/n:TargetFlashRecoveryArea---leave blank
--/n:SharedStorage--
--/n:Convert--
--/n:ConvertToRAC--
--/n:RConfig--
=================================================================================
5> After modifying the convert2RAC.xml file as above under /tmp/convert2RAC.xml , run rconfig tool as below
cd $ORACLE_HOME/bin
./rconfig /tmp/convert2RAC.xml
6> Change SID in /etc/oratab as PROD1 in rac1 m/c & PROD2 in rac2 m/c .
7> Finally run srvctl to configure the database
srvctl config database -d PROD
srvctl config database -d PROD
Thanks