Friday, June 11, 2021

How to Check Whether Oracle Binary/Instance is RAC Enabled and Relink Oracle Binary in RAC (Doc ID 284785.1)

 In this Document

Goal
Solution
 To check whether Oracle binary is RAC enabled:
 To check whether a running instance is a RAC instance :
 Steps to relink oracle binary with RAC option (on the platforms other than windows):

APPLIES TO:

Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Information in this document applies to any platform.

GOAL

This note is to check whether Real Application Clusters(RAC) option is linked into Oracle binary and whether a database instance is a RAC instance, and how to relink Oracle binary in RAC environment.

The likely error includes "Oracle home is not a cluster database home".

 

SOLUTION

To check whether Oracle binary is RAC enabled:

As ORACLE_HOME owner:

On Linux/UNIX except AIX:

  ar -t $ORACLE_HOME/rdbms/lib/libknlopt.a|grep kcsm.o


On AIX:

  ar -X32_64 -t $ORACLE_HOME/rdbms/lib/libknlopt.a|grep kcsm.o



If above command does not return anything, RAC option is not linked in. A RAC enabled oracle binary should return "kcsm.o".

To check whether a running instance is a RAC instance :

Multiple options here:

1. Check sqlplus banner (Applicable to Windows):

$ORACLE_HOME/bin/sqlplus / as sysdba

SQL*Plus: Release 11.1.0.6.0 - Production on Fri Dec 26 12:11:13 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options


A RAC instance will show "Real Application Clusters" option in the banner.


2. Check whether lmon background process exists for the instance

ps -ef| grep lmon | grep <ORACLE_SID>
oracle   627     1  0   Apr 15     ?  1:02 ora_lmon_racdb1


Only RAC instance has lmon background process.


3. Check cluster_database parameter

SQL> show parameter cluster_database


Output "true" means it's RAC instance but this is not reliable as a RAC instance may have cluster_database set to false during maintenance period.


Steps to relink oracle binary with RAC option (on the platforms other than windows):

Execute the following on all nodes where the ORACLE_HOME exists:


1. As ORACLE_HOME owner, stop all resources (database, listener, ASM etc) that's running from the home. When stopping database, use NORMAL or IMMEDIATE option.

2. If relinking 11gR2 Grid Infrastructure home, unlock GI home as root: $GRID_HOME/crs/install/rootcrs.pl -unlock

3. As ORACLE_HOME owner, execute the following to relink:

  cd $ORACLE_HOME/rdbms/lib
  make -f ins_rdbms.mk rac_on ioracle


If interconnect is infiniband and RDS protocol is being used instead of UDP:

  cd $ORACLE_HOME/rdbms/lib
  make -f ins_rdbms.mk ipc_rds ioracle


Caution: confirm infiniband interconnect and RDS protocol before executing it 
Note: If you are changing more than 1 home, repeat the make command for all homes. 

4. If relinking 11gR2 Grid Infrastructure home, lock GI home as root: $GRID_HOME/crs/install/rootcrs.pl -patch

No comments:

Post a Comment

Database Options/Management Packs Usage Reporting for Oracle Databases 11.2 and later (Doc ID 1317265.1)

  Database Options/Management Packs Usage Report You can determine whether an option is currently in use in a database by running options_pa...