2011-08-16 17 views
1

詳細は以下のとおりです。ORA-12154は解決できませんでした... Oracleインスタント・クライアントでここ

  1. 私はWindows 7の64ビットVM(VMware社)にthe OTN download pageからOracleインスタントクライアント11.2.0.2.0をインストール。
  2. リモートoracleデータベースに接続しようとしていますが、TNSを使用して1つのプログラムに正常に接続できますが、SQL * Plusなどのアプリケーションでは正常に接続できません。
  3. スキーマ@サービス名、パスワードなどを使用してSQL * Plusに接続しようとすると、上記のエラーが発生します。
  4. SQL Developerを介して接続するには、通常、基本的な接続情報を使用し、tnsnamesには依存しませんが、通常の接続を試行すると私にはio error: unknown host specifiedが与えられます。 TNSプロトコルを使用している場合、SQL Developerは正常にデータベースに接続し、照会できます。
  5. 他のプログラムから試してみると、SQL * Plusの場合と同じエラーが表示されます。 tnsnamesのサービス名で試してみるときも同じです。

これは明らかに、一方向ではなく他の方向では機能しないというのはかなり不満です。私はインスタントクライアントを使用するためのすべての通常の指示に従い、instantclientのディレクトリはPATHに追加され、TNS_ADMINエントリも作成され、tnsnames.oraファイルへのディレクトリとなります

+0

は、同じ問題を瞬時にクライアントの10.2バージョンを試してみました – chrismarx

+0

sqlnet.oraのNAMES.DIRECTORY_PATHの値は何ですか? –

+0

私はsqlnet.oraファイルを持っていません。それはインスタントクライアントのダウンロードの一部ではなく、手動で作成するよう指示されませんでしたか? – chrismarx

答えて

1

まあ、私はインスタントクライアントとセットアップしていたWindows 2003サーバーと一致するようにセットアップですべてを変更しました。主な変更点は、インスタントクライアントをドライブのルートにあるフォルダ(プログラムファイル/オラクル/ etcではなく)に置くことでしたが、c:/ oracleは、oracleがディレクトリパス内の文字を特定しているという、多分空白はあまりにもいいですか?

また、他のマシンにあったanythign、インスタンスのルートであるORACLE_HOME、SQL_PATH(同じ)を追加し、PATHシステム変数にディレクトリのルートを追加しました。フォルダにインスタントクライアントファイルを保存します。とにかく、私はうれしく働いていますが、これらの変更は誰でも可能です。

0

ProcessMonitorを使用して、sqlplusプロセスが何をしているかを見てください。私の場合、TNS_ADMINは正しく定義されていましたが、誤ってtnsnames.oraとsqlnet.oraには愚かな ".txt"という拡張子が付いていました。また、「Windowsエクスプローラ」には、既定で「既知のファイルタイプの拡張子を表示しない」オプションが設定されているため、名前の誤りはまったく明らかではありませんでした。

0

12.1インスタントクライアントをインストールしました。私にとっては、\ network \ admin \ tnsnames.oraファイルを作成することで問題は解決しました。ここで私が使用PowerShellのだ:

$source = "C:\Users\USER1\Desktop\tnsnames.ora" 
$target = "C:\oracle\product\12.1.0\client_1\network\admin" 
mkdir $target 
copy-item $source $target 
関連する問題