Configuring RACONENODE in RAC database.
We all know that Oracle RAC is active/active configuration, but due to application compatibility (the design part like cache fusion incompatibilities etc) you will need to stick to active/passive configuration but you want High availability solution and you do not want to use any third party clustering like VCS, Answer is yes, use raconenode feature. Here are the steps for the same.
You can also use the service level restriction stick to one node by specifying preferred and available nodes, the following is works exactly as service level but the second node is always passive which can reduce the overheads of cache fusion since your application is not compatible, like you have lots of reads from both nodes on single block which may lead to contention for buffer busy waits.
a) Check Status of RAC database
[RACDB1@Geek DBA-rac1 ] $srvctl status database -d RACDB Instance RACDB1 is running on node Geek DBA-rac1 Instance RACDB2 is running on node Geek DBA-rac2
b) Keep one of the instance down before converting database to one-node RAC configuration.
[RACDB1@Geek DBA-rac1 ] $srvctl stop instance -d RACDB -i RACDB2
c) Keep one of the instance active in Cluster before converting database to one-node RAC configuration.
[RACDB1@Geek DBA-rac1 ] $srvctl convert database -d RACDB -c RACONENODE -i RACDB1 PRCD-1214 : Administrator-managed RAC database RACDB has more than one instance The above error means you should have only 1 Instance of Database running and active for converting it to One-Node RAC. [RACDB1@Geek DBA-rac1 ] $srvctl remove instance -d RACDB -i RACDB2 Remove instance from the database RACDB? (y/[n]) y
d)It is mandatory to have at-least one service active for given instance before you convert it into RACONENODE mode, else you will get error.
[RACDB1@Geek DBA-rac1 ] $srvctl convert database -d RACDB -c RACONENODE -i RACDB1 PRCD-1242 : Unable to convert RAC database RACDB to RAC One Node database because the database had no service added [RACDB1@Geek DBA-rac1 ] $srvctl add service -d RACDB -s TEST -r RACDB1
e) Use srvctl convert command to change your database from RAC mode to RACONENODE.
[RACDB1@Geek DBA-rac1 ] $srvctl convert database -d RACDB -c RACONENODE -i RACDB1
f) Verify One Node RAC configuration.
[RACDB1@Geek DBA-rac1 ] $srvctl config database -d RACDB Database unique name: RACDB Database name: RACDB Oracle home: /u01/app/oracle/product/11.2.0/db_1 Oracle user: oracle Spfile: +ASMDATA/RACDB/spfileRACDB.ora Domain: Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: RACDB Database instances: Disk Groups: DATA, FRA Mount point paths: Services: TEST Type: RACOneNode <<<<<<< The database has successfully turned into 1-Node Configuration. Online relocation timeout: 30 Instance name prefix: RACDB1 Candidate servers: Geek DBA-rac1 Database is administrator managed
g) In case you want to relocate a RAC 1-Node database from 1 node to another, you can use following syntax
[RACDB1@Geek DBA-rac1 ]srvctl relocate database -d RACDB -n Geek DBA-rac2
Geek DBAGeek DBA
Follow Me!!!