web-dev-qa-db-ja.com

ホストマシンから仮想マシンでホストされているOracleデータベースに接続します

良い一日、

Oracleデータベースを含むOracleLinuxの仮想マシン(VirtualBoxを使用)をセットアップしました。設定後、sqlplus(仮想マシンのsqlplus)を使用して接続できることを確認できます

$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Sat Apr 21 14:32:48 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> conn myusername/mypassword
Connected.
SQL> select count(1) from my_table;

  COUNT(1)
----------
    73

SQL> 

ただし、ホストマシンからJDeveloperを使用して接続しようとすると、

ステータス:失敗-テストに失敗しました:IOエラー:ネットワークアダプタは接続を確立できませんでした。

ホストマシンのJDeveloperからイントラネットから他のデータベースに接続しようとしましたが、成功しました。また、念のため、仮想マシンのiptablesをオフにしてみました。

Sudo /etc/init.d/iptables stop

しかし、これまでのところ、何も機能しません。

何か案は?

ありがとう、

フランツ参照

編集:更新:ホストマシンにsqlplusをインストールしました(他の人への注意:instantclient 10.2.0.4.064ビットはMacでは動作しません。32を使用してくださいMacが私のような64ビットであっても-ビット)、仮想マシンでOracleデータベースに接続しようとしましたが成功しました!ただし、JDeveloperを使用して接続することはできません。

1
Franz See

「ステータス:失敗-テストに失敗しました:IOエラー:ネットワークアダプタは接続を確立できませんでした。」」の意味を理解しました。結局のところ、接続を確立できませんでした。プロキシ構成が原因です。

0
Franz See

Sqlplusがインストールされているマシン(この場合は仮想マシンのホスト)では、他のOracleデータベースサーバーに接続する前に、 Oracle環境変数を設定 する必要があります。例えば:

setenv Oracle_SID orcl
setenv Oracle_HOME /u01/app/Oracle/product/11.1.0/db_1
setenv LD_LIBRARY_PATH $Oracle_HOME/lib:/usr/lib:/usr/dt/lib:/usr/openwin/lib:/usr/ccs/lib

Adminフォルダーとそのフォルダー内のtnsnames.oraファイルを手動で作成する必要がある場合があります。

リモートのOracleサーバーに接続するプロセスは、ウィザード主導のプロセスではなく、手作業が必要です。上記にリンクされているヘルプドキュメントは、特定の環境に必要なものをガイドします。


編集1

申し訳ありませんが、私は物事をよりよく理解していると思います。何か違うものを試してみましょう。

仮想マシンのインスタンスリスナーはIPアドレスをリッスンしていないと思います。仮想マシンで、Oracle Enterprise ManagerWebインタフェースの「NetServicesAdministration」ページに移動します。リスナー(LISTENER_localhost)を編集し、リスナーを追加して、インスタンスのIPアドレスを使用することを選択します。デフォルトに従ってポート1521を保持します。サービスを再開するかどうかを尋ねられます。そうして下さい。そうすれば、ホスト(またはその他のマシン)から接続できるようになります。


編集2

JDeveloperでは、ストップ3/4で接続ウィザードを使用して、SIDではなくサービス名を使用します。

enter image description here

1
Wesley