PHPからOracle XE に接続

$> tnsping localhost
はOK

$> sqlplus user/pass@XE
ORA-12514: TNS:
リスナーは接続記述子でリクエストされたサービスを現在認識していません

というエラーが出る.
PHPからつないでも同じORA-12514 のエラー.

対処:
listener.ora のSID_LIST_LISTENER に以下を追加

(SID_DESC =
(SID_NAME = XE)
(ORACLE_HOME = /usr/lib/oracle/xe/app/oracle/product/10.2.0/server)
)

結果:
sqlplus も普通に接続でき,PHPのエラーも変わった.

ORA-12705: Cannot access NLS data files or invalid environment specified

一歩前進?