sql >> データベース >  >> RDS >> Oracle

ORA-12154指定された接続識別子を解決できませんでした

    tnsnames.oraファイルを使用して、使用可能なデータベースサービスを指定していると仮定します。その場合、接続エラーは通常2つになります。

    1. アプリケーションは、接続文字列で指定したTNSエントリを見つけることができません。

    2. TNSエントリが見つかりましたが、tnsnames.oraファイルのIPまたはホストが正しくありません。

    1番を拡張する(これがあなたの問題だと思います)。次のようなものを使用して接続するようにOracleに指示する場合:

    sqlplus user/[email protected]
    

    このサービスは、tnsnames.oraファイルで定義されています。 tnsnames.oraで定義されていないサービスに接続しようとすると、次のエラーが発生します。

    [[email protected]〜] $ sqlplus sodonnel / [email protected]

    SQL*Plus: Release 11.2.0.1.0 Production on Mon Oct 31 21:42:15 2011
    
    Copyright (c) 1982, 2009, Oracle.  All rights reserved.
    
    ERROR:
    ORA-12154: TNS:could not resolve the connect identifier specified
    

    したがって、いくつかのことを確認する必要があります:

    1. tnsnames.oraファイルはありますか-コンソールが接続できるので、そうだと思います
    2. サービスのファイルにエントリがありますか?コンソールが接続されているので、はいと思います
    3. アプリケーションはtnsnames.oraを見つけることができますか?

    問題は3番目かもしれません-アプリケーションは、コンソールを実行するときとは異なるユーザーとして実行されますか?

    Oracleは、TNS_ADMIN環境変数で定義されたディレクトリでtnsnames.oraファイルを検索します-異なるユーザーとして実行している場合は、TNS_ADMIN環境変数が設定されていないため、ファイルが見つかりませんか?



    1. SQL Serverに保存すると、DateTimeのミリ秒が変更されます

    2. MicrosoftAccessのクエリグリッドでフィールドを移動する方法

    3. グループ化前のMySQLの注文

    4. SQLステートメントのバックティックと角括弧の違いは何ですか?