SP2-1503: Unable to initialize Oracle call interface


  1. 现象
    突然有台数据库要起来,执行 sqlplus 执行报错
$ /oracle/11g/product/11.2.0.3/db_1/bin/sqlplus
SP2-1503: Unable to initialize Oracle call interface
SP2-0152: ORACLE may not be functioning properly
  1. 分析
    在同一台机器上装10g和11g 两个环境
环境变量配置如下

export PATH
ORACLE_BASE=/oracle 
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
ORACLE_SID=rnm
PATH=/usr/sbin:$PATH 
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export ORACLE_BASE
export ORACLE_HOME
export ORACLE_SID
export PATH
export LD_LIBRARY_PATH
export NLS_LANG


修改环境变量后
export PATH
ORACLE_BASE=/oracle 
ORACLE_HOME=$ORACLE_BASE/11g/product/11.2.0.3/db_1
ORACLE_SID=rnm
PATH=/usr/sbin:$PATH 
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export ORACLE_BASE
export ORACLE_HOME
export ORACLE_SID
export PATH
export LD_LIBRARY_PATH
export NLS_LANG


source /home/oracle/.bash_profile 
  1. 验证
$ $ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Thu Jun 2 14:45:27 2022

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 1970864128 bytes
Fixed Size		    2229664 bytes
Variable Size		 1275071072 bytes
Database Buffers	  687865856 bytes
Redo Buffers		    5697536 bytes
Database mounted.
Database opened.