Sunday, March 15, 2015

SP2-1503: Unable to initialize Oracle call interface; SP2-0152: ORACLE may not be functioning properly

SP2-1503: Unable to initialize Oracle call interface; SP2-0152: ORACLE may not be functioning properly


When running a OS script via a job on Enterprise Manager 11g the following error may occur when calling SQL*plus:

SP2-1503: Unable to initialize Oracle call interface
SP2-0152: ORACLE may not be functioning properly

The problem relates to the environment variable settings used by SQL*Plus, specifically the LD_LIBRARY_PATH variables.

There is a metalink note describing this error:
Sp2-1503 And Sp2-0152 When Running SQL Script Job From Grid Control [ID 1226083.1]

For a solution set the LD_LIBRARY_PATH (or LD_LIBRARY_PATH_64) variable after setting up the environment (for example after setting oraenv).

Example:

# setup the Oracle environment without being prompted

export ORACLE_SID=AAA
export ORAENV_ASK=NO
. /usr/local/bin/oraenv

#LD_LIBRARY_PATH
export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}

#LD_LIBRARY_PATH_64
export LD_LIBRARY_PATH_64=${LD_LIBRARY_PATH}
If the above don't work also try LD_LIBRARY_PATH64.
On 32-bit Linux the lib directory under the ORACLE_HOME is $ORACLE_HOME/lib32 so set:
export LD_LIBRARY_PATH=${ORACLE_HOME}/lib32:${LD_LIBRARY_PATH}


No comments: