SQL*PLUSでホスト名を入れるとエラー

このQ&Aのポイント
  • SQL*PLUSでホスト名を入れると、ORA-12154エラーとなってしまいます。
  • ホスト名を入力しないと、正常に接続可能です。
  • TNSNAMES.ORAの内容を確認して設定が間違っている可能性があります。
回答を見る
  • ベストアンサー

SQL*PLUSでホスト名を入れるとエラー

よろしくお願いします。 SQL*PLUSで、ホスト名を入れると、ORA-12154エラーとなってしまいます。 ホスト名を入力しないと、正常に接続可能です。 ちなみに、DBはローカルにあります。 以下、TNSNAMES.ORAの内容です。 =========================== ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = cl-000788.iafc.local )(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) ================================= どこか、設定が間違っているのでしょうか? よろしくお願いいたします。

  • Oracle
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.3

こんにちわ。 > SQL*PLUSで CONNECT AA/AA@ORCL > とやっても、ORA-12154エラーがでてしまうのですが・・・。 そうすると、SQL*Plus がtnsnames.ora をきちんとみつけられて いないようですね。 tnsping ORCL を実行して見てください。 --> tnsnames.ora をどこから探しているか分かると思います。 TNS_ADMIN 環境変数にtnsnames.ora が置いてあるディレクトリを 指定してから再度確認して見てください。

MELISSA6700
質問者

お礼

こんにちわ いろいろ、ありがとうございました。 おかげで、SQL*PLUSでの実行も、ODBC接続もできるようになりました。 本当にありがとうございました。

その他の回答 (2)

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.2

こんにちわ。 > ホスト名を入れると、ORA-12154エラーとなってしまいます。 tnsnames.ora の記載がこうなっているのであれば、SQL*Net 経由で 接続する場合は、ユーザ名/パスワード@ORCL を指定します。 ORA-12154 は、接続文字列 (@以下) で指定したものがtnsnames.ora で 見つけられなかったと言う事です。

MELISSA6700
質問者

お礼

すみません、こちらに書くのですね。 上記接続で、NetManagerは、接続できるのですが・・・。

MELISSA6700
質問者

補足

こんにちわ ご回答ありがとうございます。 ちなみに、SQL*PLUSで CONNECT AA/AA@ORCL とやっても、ORA-12154エラーがでてしまうのですが・・・。 ホスト名をIPアドレスにしても同様です。 何か違うのでしょうか?

回答No.1

ホスト名が正しくないのではないでしょうか。 ping cl-000788.iafc.local で確認してみてはどうでしょうか。

MELISSA6700
質問者

補足

ご回答、ありがとうございました。 pingは、通りました。 Sql*plusでホスト名をいれると、TCPIP接続に変わるようですね。 いろいろためしてみて、今は、SQL*PLUSで、 ORA-12537: TNS:connection closed というエラーが出てしまっています。 Net Manaerでも同じエラーが出てしまいます。

関連するQ&A

  • Oracle9iにて接続ホストを変更したい場合

    あるデータベース兼アプリサーバに接続しているクライアントより、 テスト環境用として構築した全く同じ環境の別サーバに接続させようと思い、 以下のtnsnames.oraの「(HOST= )」をテスト用サーバのホスト名に変更しましたが、「ORA-12535: TNS: 操作はタイムアウトしました。」が発生します。 AAAAAAA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = BBBBBBB) (PORT = 1521) ) ) (CONNECT_DATA = (SERVICE_NAME = CCCCCCC) ) ) AAAAAAA_ADMIN = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = BBBBBBB) (PORT = 1521) ) ) (CONNECT_DATA = (SERVICE_NAME = CCCCCCC) (SERVER = dedicated) ) ) 他に何か変更するファイルがありましたでしょうか? ご存知の方がおられればご教示いただけませんでしょうか? 宜しくお願いします。

  • PHP5でOracle接続がエラー

    Linuxサーバー(Oracle(10.1)+Apache(2.0.52)+PHP(5.0.5)) からデータを参照し、ブラウザで表示するものを作成しようとしています。 PHPからオラクルへ接続テストをしたところ、うまくいきませんでした。 $conn=oci_connect($user,$pass,$db); これがORA-12514のエラーになります。 エラーの原因がわかりません。どういうことを確認すればいいですか? tnsnames.oraとlistener.oraの"HOST"はIPアドレスにしていますが、 リスナーのステータス(コマンド:lsnrctl status) で見た"HOST"は<*.co.jp>というふうになっています。 これは問題ないのでしょうか? (tnsnames.ora) <$DB> = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <IPアドレス>)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =<$db>) ) ) (listener.ora) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = <IPアドレス>)(PORT = 1521)) ) ) (リスナーのステータス) リスニング・エンドポイントのサマリー... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<$db.**.co.jp>)(PORT=1521)))

  • データベースに接続できない

    データベースに接続できません!! 「tnsnames.ora」、「listener.ora」、「sqlnet.ora」の内容は以下になっております。いろいろ調べてみて、これでいいとは思うのですが、「ORA-12545 ターゲット・ホストまたはオブジェクトが見つかりません。」というエラーが出てしまい接続できません。 DBはOracle10g Release1を使用しています。 【tnsnames.oraの内容】 ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) ) 【listener.oraの内容】 SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = G:\oracle\product\10.1.0\Db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_NAME = orcl) (ORACLE_HOME = G:\oracle\product\10.1.0\Db_1) (SID_NAME = orcl) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) )

  • Oracle10g から 11g へ接続しようとしていますが、

    Oracle10g から 11g へ接続しようとしていますが、 「ORA-12541: TNS: リスナーがありません。」 と表示されます。 例)以下の環境で、「SQL/PLUS」を使用して、 ユーザ名/パスワード@NEWDB でログオンすると発生。 原因が分かる方がいらっしゃれば御教授願います。 (サーバ側は新規で11gをインストールしました。) 現在の tnsnames は以下のようになっていますが、 「localhost」などの記述に問題ありでしょうか? ■サーバ側:11g(O/S:XP) ※IP 192.168.0.1 WENDY = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = WENDY.com) ) ) LISTENER_WENDY = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ■クライアント側:10g(O/S:XP) NEWDB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = WENDY.com) ) )

  • ORA-12514が出た時の対処法と原因

    今回で2度目なのですが、ORA-12514のエラーがでる様になりました。 前回は仕方なくフォルダを削除して再インストールしたら直りましたが、 PCで作業している内に再び同じ現象になりましたので、 原因と再インストール以外の対処法があればと思い書き込みさせて頂きました。 環境はWindows2000でOracle10gです。 Oracleを入れたPCと作業しているPCは同じPCです。 前回と今回の違いは、 前回は「XYZ」の作成をしていない。 サービスのOracleOraDb10g_home1TNSLitenerが開始できなかった。 (一応コマンド入力でもダメでした) (リスナーの起動を試すみたいなのがインターネットで検索してる時に書いてあったので参考にしました) の2点です。 現在は「XYZ」が作成されているのと、 OracleOraDb10g_home1TNSLitenerが停止したり開始したりすることができます。 自分で作成したオラクルは初めてで、 最初にエラーが出た時もインターネットで検索したりして、 原因を探そうと思いましたが難しくて断念し再インストールといった感じでした。 どうかよろしくお願いします。 listener.oraとtnsnames.oraは下記の通りです。 # listener.ora Network Configuration File: g:\oracle\product\10.1.0\Db_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = g:\oracle\product\10.1.0\Db_1) (PROGRAM = extproc) ) ) XYZ = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = abc)(PORT = 1521)) ) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = abc)(PORT = 1521)) # tnsnames.ora Network Configuration File: g:\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. XYZ = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = abc)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = abc)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) )

  • 【sqlplus】USER/PASS@HOSTでログインできない

    SQLPLUSでローカルのOracle10gに接続を試みているのですが コマンドプロンプトで sqlplus USER/PASS では接続できるのですが、 sqlplus USER/PASS@HOST で接続できないんです。 環境は下記となっております。 Windows XP Oracle10g(10.1.0) ======【エラー内容】================================== C:\Documents and Settings\XXXX XXXX>sqlplus USER/PASS@orcl SQL*Plus: Release 10.1.0.2.0 - Production on 火 7月 3 01:56:57 2007 Copyright (c) 1982, 2004, Oracle. All rights reserved. ERROR: ORA-12523: TNS:listener could not find instance appropriate for the client connection ======【listener.ora】================================== # listener.ora Network Configuration File: C:\oracle\product\10.1.0\Db_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = C:\oracle\product\10.1.0\Db_1) (PROGRAM = extproc) ) (SID_DESC = (SID_NAME = ORCL) (ORACLE_HOME = C:\oracle\product\10.1.0\Db_1) (PROGRAM = oracle) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) ) ) ) ======【sqlnet.ora】================================== # sqlnet.ora Network Configuration File: C:\oracle\product\10.1.0\Db_1\network\admin\sqlnet.ora # Generated by Oracle configuration tools. SQLNET.AUTHENTICAION_SERVICES=NONE NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) ======【tnsnames.ora】================================== # tnsnames.ora Network Configuration File: C:\oracle\product\10.1.0\Db_1\network\admin\tnsnames.ora # Generated by Oracle configuration tools. ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = localhost) (PORT = 1521) ) (CONNECT_DATA = (SERVER = SHARED) (SERVICE_NAME = orcl) ) ) ======【tnsping】================================== Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = localhost) (PORT = 1521)) ( CONNECT_DATA = (SERVER = SHARED) (SERVICE_NAME = orcl))) OK (40 msec) ======【LSNRCTL>status】================================== Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) Services Summary... Service "ORCL" has 1 instance(s). Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service... 実は当初PHPから接続しようと色々やっていたのですが、sqlplusで まともに接続できていないことが判明し、自分でも色々調べてみた のですが、どうしてもうまくいかず質問させていただいた次第です。 初心者ですが、どうかよろしくお願いいたします。

  • DBリンクできませんが

    これが TNSNAMES.ORA (一部仮名) ORACLE.AB123 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 123.456.789.012)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = AB123) ) ) で  CREATE DATABASE LINK ORACLE.AB123 CONNECT TO ABCUSER IDENTIFIED BY ABCUSER USING 'ORACLE.AB123' そして SELECT * FROM ABCUSER.ABC@ORACLE.AB123 →ORA12154エラーになってしまいます。なぜでしょうか?

  • オラクル:ORA-12154メッセージ

    助けてください。 クライアントからSQL*PLUSを実行しようとすると出ます。 NetConfigurationAssistantのローカル・ネット・サービス名構成でテストすると接続OKです。 過去の投稿を参考にしましたが直りません。 Oracle9iです。 サーバに作ったデータベースはabcです。 ホストマシン名はabc-serverです。 今、tnsnames.oraの中は次の通りです。 abc = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = abc-server)(PORT = 1521)) ) (CONNECT_DATA = (SID = abc) ) )

  • リスナーがありません

    無償版のOracle 12cをインストールしました。 レジストリで「ORACLE_HOME」と「ORACLE_SID」の値を確認して環境変数に設定しました。 ORACLE_HOME … C:\app\ora\product\12.1.0\dbhome_2 ORACLE_SID … orcl それから下記のURLを参考にしてユーザーを作成しました。 http://replication.hatenablog.com/entry/2015/08/05/093000 作成したユーザーで接続しようとしたら下記のエラーが発生してしまいました。 conn 上記で作成したユーザー/パスワード@PDBORCL ORA-12541: TNS: リスナーがありません ネットで「tnsnames.ora」に記述するという記事を見たので下記のパス先ある「tnsnames.ora」に下記の内容を追加しました。 C:\app\ora\product\12.1.0\dbhome_2\NETWORK\ADMIN PDBORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IPアドレス)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PDBORCL) ) ) でも結果は同じでした。 ※試しに下記のパス先に「tnsnames.ora」を設置しても同じでした。 C:\app\ora\product\12.1.0\dbhome_1\NETWORK\ADMIN 申し訳ありませんがどのようにすればいいのでしょうか。 何卒、ご教授宜しくお願いします。

  • 接続識別子とは何でしょうか??

    現在Bronzeの問題を解いているのですが ある問題がどうしても納得できません。 ・接続記述子には、ネットワーク・ホスト名とデータベース・サービス名が含まれる -->これは正解で、理解できましたが ・接続識別子には、ネットワーク・ホスト名とデータベース・サービス名が含まれる。 -->問題の回答ではこれも正解となっているのですが、どうして正解なのかよく分かりません。 接続識別子は、接続記述子を識別する為のものですよね? tnsnames.ora.sampleの hsagent = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)) (CONNECT_DATA=(SID=hsagent)) (HS=) ) 接続識別子は、hsagentで 接続記述子は、(DESCRIPTION=・・・) だと思っているのですが・・・ よろしくお願いします。