Tihiroの頭を休めるIT教室

少しだけ頭使って後は根性

ORA-12154について。

概要

OracleDBに接続しようと思ったら繋がらない。 発生するのはORA-12154。 ということで調べてみた。

環境は

です。

エラー対応

tnsnames.oraが見つからない

tnsnames.oraが見つからない場合、

ORA-12154 TNS:could not resolve the connect identifier specified

が発生します。

Oracleは下記の順番でtnsnames.oraを探しに行きます。

  1. $ORACLE_HOME/network/admin/tnsnames.ora
  2. $TNS_ADMIN/tnsnames.ora

つまりは環境変数を設定しておけってことですね。

tnsnames.oraの記述に不備がある。

tnsnames.oraの記述が誤っている場合

ORA-12154 Error while trying to retrieve text for error

が発生します。

  1. tnsnames.oraの記述を再確認する
  2. 接続に利用するアプリケーション(SQLPlusとか)にtnsnames.oraを反映(アプリケーションの再起動など)する。

で、OKです。

まとめ

環境変数TNS_ADMINって初めて聞きました。まだまだ知らないことが沢山あります。