0% found this document useful (0 votes)
141 views5 pages

RacOneNode To RAC Using Rconfig

The document describes converting a RACOneNode database named "rone" to a standard RAC database using the rconfig utility. Key steps include: 1. Backing up the existing rconfig XML file and modifying it to specify the source and target database, nodes, and other configuration details. 2. Running rconfig in test mode to validate the conversion. 3. Running rconfig in live mode to perform the actual conversion. 4. Addressing issues that occurred like resources not being added back to CRS properly.

Uploaded by

Sddr
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
141 views5 pages

RacOneNode To RAC Using Rconfig

The document describes converting a RACOneNode database named "rone" to a standard RAC database using the rconfig utility. Key steps include: 1. Backing up the existing rconfig XML file and modifying it to specify the source and target database, nodes, and other configuration details. 2. Running rconfig in test mode to validate the conversion. 3. Running rconfig in live mode to perform the actual conversion. 4. Addressing issues that occurred like resources not being added back to CRS properly.

Uploaded by

Sddr
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

RacOneNode to RAC using rconfig

==============================================

Pre-Checks:

[oracle@oraracn2 dbs]$ srvctl status database -d rone


Instance rone_2 is running on node oraracn2
Online relocation: INACTIVE
[oracle@oraracn2 dbs]$ ps -ef |grep pmon
oracle 8063 1 0 13:10 ? 00:00:05 asm_pmon_+ASM2
oracle 22522 1 0 16:46 ? 00:00:00 ora_pmon_rone_2
oracle 23179 9293 0 16:54 pts/1 00:00:00 grep pmon
[oracle@oraracn2 dbs]$ srvctl config database -d rone
Database unique name: rone
Database name:
Oracle home: /u01/app/oracle/product/11.2.0/db_1
Oracle user: oracle
Spfile: +DATA/rone/spfilerone.ora
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: rone
Database instances:
Disk Groups: CRS,DATA
Mount point paths:
Services: rones
Type: RACOneNode
Online relocation timeout: 30
Instance name prefix: rone
Candidate servers: oraracn1,oraracn2
Database is administrator managed
[oracle@oraracn2 dbs]$

Activity:
====================
1.
[oracle@oraracn2 dbs]$ cd
/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs
[oracle@oraracn2 sampleXMLs]$

2. Backup orig xml file or create new file for our activity.

[oracle@oraracn2 sampleXMLs]$ cp ConvertToRAC_AdminManaged.xml


ConvertToRAC_AdminManaged.xml_orig

3. Do required changes in .xml file

<n:Convert verify="YES"> ==> only


<n:SourceDBHome>/oracle/product/11.2.0/db_1</n:SourceDBHome> ==>
/u01/app/oracle/product/11.2.0/db_1
<n:TargetDBHome>/oracle/product/11.2.0/db_1</n:TargetDBHome> ==>
/u01/app/oracle/product/11.2.0/db_1
<n:SourceDBInfo SID="sales"> ==> rone_2
change credentials if required.

Change node list:


<n:NodeList>
<n:Node name="node1"/> ==>oraracn1
<n:Node name="node2"/> ==>oraracn2
</n:NodeList>
<!--Instance Prefix tag is optional starting with 11.2. If left empty, it is
derived from db_unique_name.-->
<n:InstancePrefix>sales</n:InstancePrefix> ==> empty ==>
<n:InstancePrefix></n:InstancePrefix>

<n:TargetDatabaseArea>+ASMDG</n:TargetDatabaseArea> ==> DATA

<n:TargetFlashRecoveryArea>+ASMDG</n:TargetFlashRecoveryArea> ==> FRA

Note:
�Convert verify�: Value of �ONLY� denotes to run rconfig in Test mode, �YES�
denotes Live mode conversion.

Now execute rconfig in Test mode only (<n:Convert verify=�ONLY�>). Post success, we
can execute with <n:Convert verify=�YES�>.

4. Crosscheck once "convert verify" Tag.

[oracle@oraracn2 sampleXMLs]$ cat ConvertToRAC_AdminManaged.xml |grep "Convert


verify"
<n:Convert verify="ONLY">

5. Goto $ORACLE_HOME/bin and execute.

[oracle@oraracn2 sampleXMLs]$ cd /u01/app/oracle/product/11.2.0/db_1/bin/


[oracle@oraracn2 bin]$ ls -ltr |grep rconf
-rwxr-xr-x. 1 oracle oinstall 7097 Apr 28 02:30 rconfig
[oracle@oraracn2 bin]$

./rconfig
/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml

6. Here �Operation Succeded� mentions its success in test mode.


Now execute rconfig in Live mode only (change <n:Convert verify=�YES�>). And
execute below.

[oracle@oraracn2 bin]$ vi
/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml
[oracle@oraracn2 bin]$ cat
/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml |grep "Convert verify"
<n:Convert verify="YES">
[oracle@oraracn2 bin]$

[oracle@oraracn2 bin]$ ./rconfig


/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[oracle@oraracn2 bin]$ ./rconfig
/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml
<?xml version="1.0" ?>
<RConfig version="1.1" >
<ConvertToRAC>
<Convert>
<Response>
<Result code="1" >
Got Exception
</Result>
<ErrorDetails>
oracle.sysman.assistants.rconfig.engine.StorageCreationException:
oracle.sysman.assistants.rconfig.engine.StorageCreationException: Thread 2 is open.
All threads beyond thread 1 should be closed.
Operation Failed. Refer logs at
/u01/app/oracle/cfgtoollogs/rconfig/rconfig_06_06_19_17_41_51.log for more details.

</ErrorDetails>
</Response>
</Convert>
</ConvertToRAC></RConfig>
[oracle@oraracn2 bin]$ srvctl status database -d rone
Instance rone_2 is running on node oraracn2
Online relocation: INACTIVE
[oracle@oraracn2 bin]$ srvctl stop database -d rone
[oracle@oraracn2 bin]$

[oracle@oraracn2 bin]$ ./rconfig


/u01/app/oracle/product/11.2.0/db_1/assistants/rconfig/sampleXMLs/ConvertToRAC_Admi
nManaged.xml
Converting Database "rone" to Cluster Database. Target Oracle Home:
/u01/app/oracle/product/11.2.0/db_1. Database Role: PRIMARY.
Setting Data Files and Control Files

Adding Database Instances


Adding Redo Logs
Enabling threads for all Database Instances
Setting TEMP tablespace
<?xml version="1.0" ?>
<RConfig version="1.1" >
<ConvertToRAC>
<Convert>
<Response>
<Result code="1" >
Got Exception
</Result>
<ErrorDetails>
oracle.sysman.assistants.rconfig.engine.StorageCreationException:
java.lang.NullPointerException
Operation Failed. Refer logs at
/u01/app/oracle/cfgtoollogs/rconfig/rconfig_06_06_19_19_30_51.log for more details.

</ErrorDetails>
</Response>
</Convert>
</ConvertToRAC></RConfig>
[oracle@oraracn2 bin]$

[oracle@oraracn2 ~]$ srvctl start database -d rone


PRCR-1079 : Failed to start resource ora.rone.db
CRS-2501: Resource 'ora.rone.db' is disabled
[oracle@oraracn2 ~]$

Solution for above startup problem.

[oracle@oraracn2 ~]$ srvctl enable database -d rone

Issue not resolved.

After rconfig in above case db got removed from crsctl resource list:

srvctl add database -d rone -o /u01/app/oracle/product/11.2.0/db_1


srvctl add instance -d rone -i rone1 -n oraracn1
srvctl add instance -d rone -i rone2 -n oraracn2

[oracle@oraracn2 bin]$ srvctl add database -d rone -o


/u01/app/oracle/product/11.2.0/db_1/
PRCS-1007 : Server pool rone already exists
PRCR-1086 : server pool ora.rone is already registered

Chunk from crsctl stat res -t o/p

Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE oraracn1
ora.cvu
1 ONLINE ONLINE oraracn1
ora.oc4j
1 ONLINE ONLINE oraracn1
ora.oraracn1.vip
1 ONLINE ONLINE oraracn1
ora.oraracn2.vip
1 ONLINE ONLINE oraracn2
ora.rac.db
1 OFFLINE OFFLINE Instance Shutdown
2 OFFLINE OFFLINE Instance Shutdown
ora.rone.db
1 ONLINE OFFLINE
ora.rone.rones.svc
1 OFFLINE OFFLINE
ora.scan1.vip
1 ONLINE ONLINE oraracn1
[oracle@oraracn1 ~]$

[oracle@oraracn2 bin]$ ./crsctl delete serverpool ora.rone


CRS-2554: Server pool 'ora.rone' cannot be unregistered as it is referenced by
resource 'ora.rone.db'
CRS-4000: Command Delete failed, or completed with errors.

[oracle@oraracn2 bin]$ ./crsctl delete resource ora.rone.db


CRS-2730: Resource 'ora.rone.rones.svc' depends on resource 'ora.rone.db'
CRS-4000: Command Delete failed, or completed with errors.

[oracle@oraracn2 bin]$ ./crsctl delete resource ora.rone.rones.svc


[oracle@oraracn2 bin]$ ./crsctl delete resource ora.rone.db
[oracle@oraracn2 bin]$ ./crsctl delete serverpool ora.rone
[oracle@oraracn2 bin]$

[oracle@oraracn2 bin]$ srvctl start database -d rone


PRKO-3119 : Database rone cannot be started since it has no configured instances.
[oracle@oraracn2 bin]$ srvctl add instance -d rone -i rone1 -n oraracn1
[oracle@oraracn2 bin]$ srvctl add instance -d rone -i rone2 -n oraracn2
[oracle@oraracn2 bin]$ srvctl start database -d rone
PRCR-1079 : Failed to start resource ora.rone.db
CRS-5017: The resource action "ora.rone.db start" encountered the following error:
ORA-01618: redo thread 2 is not enabled - cannot mount
. For details refer to "(:CLSN00107:)" in
"/u01/app/11.2.0/grid/log/oraracn2/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2674: Start of 'ora.rone.db' on 'oraracn2' failed


CRS-5017: The resource action "ora.rone.db start" encountered the following error:
ORA-03113: end-of-file on communication channel
Process ID: 24479
Session ID: 1 Serial number: 3
. For details refer to "(:CLSN00107:)" in
"/u01/app/11.2.0/grid/log/oraracn1/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2632: There are no more servers to try to place resource 'ora.rone.db' on that
would satisfy its placement policy
CRS-2674: Start of 'ora.rone.db' on 'oraracn1' failed
[oracle@oraracn2 bin]$ srvctl add service -d rone -s rones -r "rone1","rone2"
[oracle@oraracn2 bin]$ srvctl modify database -d rone -p
"+DATA/rone/spfilerone.ora"
[oracle@oraracn2 bin]$ srvctl modify database -d rone -a "CRS,DATA"

You might also like