Relinking SF Oracle RAC libraries with Oracle RAC manually

The relinking process involves the following tasks:

The Oracle RAC and Veritas library locations for linking the Oracle libraries with SF Oracle RAC are listed in the following tables. You may use these tables as reference when you relink the libraries as described in this section.

Note:

VCS IPC is not applicable to Oracle RAC 11g.

Table: Oracle RAC and Veritas library locations for VCS IPC and ODM - Oracle RAC 10g Release 2 lists the Oracle RAC and Veritas library locations for Oracle RAC 10g Release 2.

Table: Oracle RAC and Veritas library locations for VCS IPC and ODM - Oracle RAC 10g Release 2

Libraries

Oracle RAC library

Veritas library

VCS IPC

$ORACLE_HOME/lib/libskgxp10.so
/opt/VRTSvcs/rac/lib/
libskgxp10_ver25_64.so

ODM

For Solaris SPARC:

$ORACLE_HOME/lib/libodm10.so 

For Solaris x86:

$ORACLE_HOME/lib/libodm10.so

For Solaris SPARC:

/usr/lib/sparcv9/libodm.so

For Solaris x86:

/usr/lib/amd64/libodm.so

Table: Oracle RAC and Veritas library locations for VCSMM and ODM - Oracle RAC 11g Release 1 lists the Oracle RAC and Veritas library locations for Oracle RAC 11g Release 1.

Table: Oracle RAC and Veritas library locations for VCSMM and ODM - Oracle RAC 11g Release 1

Libraries

Oracle RAC library

Veritas library

VCSMM

$CRS_HOME/lib/libskgxn2.so
/opt/ORCLcluster/lib/
libskgxn2.so

ODM

For Solaris SPARC:

$ORACLE_HOME/lib/libodm11.so

For Solaris x86:

$ORACLE_HOME/lib/libodm11.so

For Solaris SPARC:

/usr/lib/sparcv9/
libodm.so

For Solaris x86:

/usr/lib/amd64/
libodm.so 
Copying VCS IPC libraries for an Oracle RAC 10g installation

Perform this step only for Oracle RAC 10g installations and if you are using VCS IPC.

Perform the steps in the procedure on each node if the Oracle libraries are on local storage. If the Oracle libraries are installed on shared storage, copy the libraries on one node only. Use the mount command to check that the file system containing the Oracle libraries are mounted.

To copy VCS IPC libraries

  1. Log in as the Oracle user.

  2. Change to the $ORACLE_HOME/lib directory:

    $ cd $ORACLE_HOME/lib
  3. Back up Oracle's libskgxp10 library:

    $ mv libskgxp10.so libskgxp10.so.bkp
  4. Replace the file $ORACLE_HOME/lib/libskgxp10.so with the Veritas VCS IPC library:

    $ cp /opt/VRTSvcs/rac/lib/libskgxp10_ver25_64.so libskgxp10.so
Linking the ODM library

Perform the steps in the procedure on each node if the Oracle libraries are on local storage. If the Oracle libraries are installed on shared storage, copy the libraries on one node only. Use the mount command to check that the file system containing the Oracle libraries are mounted.

The steps vary for Oracle RAC 10g and Oracle RAC 11g.

To link the Veritas ODM library

  1. Log in as the Oracle user.

  2. Change to the $ORACLE_HOME/lib directory:

    $ cd $ORACLE_HOME/lib
  3. Back up Oracle's ODM library:

    For Oracle RAC 10g

    $ mv libodm10.so libodm10.so.bkp

    For Oracle RAC 11g

    $ mv libodm11.so libodm11.so.bkp
  4. Link the Veritas ODM library with Oracle's libodm library:

    For Oracle RAC 10g

    For Solaris SPARC:

    $ ln -s /usr/lib/sparcv9/libodm.so libodm10.so

    For Solaris x64:

    $ ln -s /usr/lib/amd64/libodm.so libodm10.so

    For Oracle RAC 11g

    For Solaris SPARC:

    $ ln -s /usr/lib/sparcv9/libodm.so libodm11.so

    For Solaris x64:

    $ ln -s /usr/lib/amd64/libodm.so libodm11.so
  5. After the relinking completes, confirm that the correct ODM library is used.

    $ ldd $ORACLE_HOME/bin/oracle | grep odm

    If the library is not linked correctly, no output is displayed. Sometimes, the Oracle ODM library may not be correctly linked with the Veritas ODM library because of the presence of a static ODM library at $ORACLE_HOME/rdbms/lib/libodm.a. This is a known issue with Oracle.

    To resolve this issue, run the following commands:

    $ cd $ORACLE_HOME/rdbms/lib
    $ mv libodm10.a libodm10.a.backup
    $ /usr/ccs/bin/make -f ins_rdbms.mk ioracle

    Verify that the correct ODM library is used:

    $ ldd $ORACLE_HOME/bin/oracle | grep odm
    libodm10.so =>   /app/oracle/orahome/lib/libodm10.so

    For more information, see the Oracle metalink document: 725903.1