HomeORACLEORACLE エラーコード ORA-12154:TNS: 指定された接続識別子を解決できませんでした。 が表示される原因と対応

ORACLE エラーコード ORA-12154:TNS: 指定された接続識別子を解決できませんでした。 が表示される原因と対応について記載しています。

ORA-12154 TNS: 指定された接続識別子を解決できませんでした。の原因と対応

ORA-12154エラーが発生してしまったときの対応手順は、大きく以下の2つになります。
(1) tnsnames.ora の場所を確認する。
(2) tnsnames.ora に samplehost(例) というネット・サービス名を設定する。

バージョンによっては、ORA-12154のエラーメッセージは
TNS: 指定された接続識別子を解決できませんでした。
または
TNS: サービス名を解決できませんでした。
の二つがありますが、原因は同じです。

ここでつまずいてデータベース(DB)に繋げないと
システム開発についてはほぼ何もできなくなってしまいます。

以下、説明です。

そもそもORA-12154エラーが何を意味するか、というと
ORACLEデータベースの接続先に指定しているところが、どこかわかりませんよ。
と言うことになります。

例えばSQL*PLUSで
sqlplus user/pass@samplehost
でつなごうとしているとき、上記の"samplehost"が何なのかわからない。ということです。

これを定義しているのは、Windowsでは、ORACLEデータベースの
%ORACLE_HOME%/network/admin/tnsnames.ora
にあります。

%ORACLE_HOME%は、環境変数に設定していると思いますので
各PC端末を確認しましょう。
※個別に異なるので確認が必要です。

ちなみに、環境変数の確認は、
コンピュータを右クリックして「プロパティ」を選択
→「システムの詳細設定」を選択
→「システムのプロパティ」が表示される。「詳細設定」タブを選択
→下部にある「環境変数」をクリック
で、確認できます。

tnsnames.oraに、以下のように設定を行います。

例)

samplehost=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=oracle-server)(PORT=1521))
(CONNECT_DATA=
(SID=orcl)))

本来samplehost とすべきところを
スペルミスでsaplehost などとしてしまい、ORA-12154エラーが発生することもありますので
まずスペルミスが無いか、を確認して、スペルミスでないようなら
tnsnames.oraに設定を追加しましょう。
ORACLEトップへ

ページトップへ

トピックアップ メニュー

トピックアップ リンク

Copyright (C) トピックアップ All Rights Reserved.
inserted by FC2 system