ArcGIS クライアントから Oracle に接続するには、Oracle クライアントを ArcGIS クライアント コンピューターにインストールし、Oracle を参照する環境変数を設定し、ArcGIS からデータベースに接続します。
すべての ArcGIS クライアント コンピューター上で Oracle クライアントが構成されたら、データベース接続ファイルを作成します。Oracle データベースでデータを参照する ArcGIS Server Web サービスを公開するには、データベース接続ファイルを ArcGIS Server サイトに登録します。
からの接続 ArcMap
ArcMap から Oracle のデータベースまたはジオデータベースに接続するには、32 ビット Oracle クライアントを ArcMap コンピューターにインストールし、PATH 環境変数を Oracle クライアントの場所に設定し、カタログ ツリーに接続ファイルを作成します。
Oracle クライアントのインストール
クライアント コンピューターから Oracle データベースへの接続を作成するためには、クライアント コンピューターに Oracle クライアント アプリケーションをインストールする必要があります。インストールする Oracle クライアント アプリケーションのリリースが、接続先のデータベースのリリースと互換性があることを確認してください。
Oracle のドキュメントに記載されている手順に従って、Oracle から Oracle Instant、Runtime、または Administrator Client を入手し、クライアント コンピューターにインストールできます。
PATH 変数の設定
ArcMap コンピューター上の PATH 環境変数に、Oracle Client のインストール場所を設定します。PATH 環境変数の設定手順については、Microsoft Windows のドキュメントをご参照ください。
PATH 変数を設定する前に ArcMap がコンピューター上で開かれていた場合、ArcMap を再起動して新しい設定を有効にします。
データベースへの接続
ArcMap または ArcCatalog のカタログ ツリーの [データベース接続] ノードでデータベース接続を追加して、Oracle のデータベースまたはジオデータベースに接続できます。
- ArcMap または ArcCatalog の [カタログ] ツリーで [データベース接続] を展開して、[データベース接続の追加] をダブルクリックします。
- [データベース プラットフォーム] ドロップダウン リストから [Oracle] を選択します。
- [インスタンス] テキスト ボックスに Oracle TNS 名を入力するか、次のいずれかの Oracle 簡易接続文字列を入力します。
- Oracle サーバーの名前/Oracle のサービス名または ID
たとえば、Oracle が myserver にインストールされており、Oracle サービス名が myosvc である場合には、次のように入力します。
myserver/myosvc
- Oracle サーバーの名前: Oracle のポート番号/Oracle のサービス名または ID
この例では、Oracle は myserver にインストールされ、ポート 60000 で接続を待ち受けます。また、Oracle サービス名は myoservice です。
myserver:60000/myoservice
- Oracle サーバーの URL
最後の例で示された同じインスタンスの URL は、次のようになります。
//myserver:60000/myoservice
- Oracle サーバーの名前 (サーバー上の Oracle リスナーがデフォルト インスタンスを指すように構成されている場合に使用できます)
- Oracle サーバーの IP アドレス/Oracle のサービス名または ID
たとえば、サーバーのアドレスが 10:10:10:10 で、Oracle サービス名が orasvc の場合、「10:10:10:10/orasvc」と入力します。
IPV6 アドレスの場合、アドレスを角括弧で囲みます (例: [4000:ab5:0:0:f666:d191:77f5:e2bd]/orasvc)。
- Oracle サーバーの IP アドレス: Oracle のポート番号/Oracle のサービス名または ID
この例では、IP アドレスは 10:20:30:40、ポートは 59999、Oracle サービスは myomy1: 10:20:30:40:59999/myomy1 です。
同じポートおよびサービスの IPV6 アドレスは次のようになります。[6543:ef4:0:1:f587:l249:12f9:a3cd]:59999/myomy110:20:30:40:59999/myomy1
必ず、簡易接続が許可されるように Oracle インスタンスを構成してください。Oracle クライアントを完全にインストールするが、接続に Easy Connect (簡易接続) 構文を使用する場合、Easy Connect (簡易接続) の使用を許可するため、クライアント側で sqlnet.ora ファイルを構成し、Easy Connect (簡易接続) 構文を許可するように Oracle サーバーを構成してください。また、Oracle インスタンスがデフォルトの Oracle ポート番号以外で接続を待ち受ける場合は、そのポート番号を含む接続構文を使用する必要がありますので注意してください。
- Oracle サーバーの名前/Oracle のサービス名または ID
- データベースに接続する際に使用する認証タイプとして、 [データベース認証] または [オペレーティング システム認証] のいずれかを選択します。
- [オペレーティング システム認証] を選択した場合、ユーザー名とパスワードを入力する必要はありません。接続は、オペレーティング システムへのログインに使用されたログイン名とパスワードを使用して確立されます。オペレーティング システムに使用するログイン情報がデータベースへのログインでは無効である場合、接続は確立されません。Oracle インスタンス クライアントを使用している場合、オペレーティング システム認証を使用できないことに注意してください。
[データベース認証] を選択した場合、有効なデータベース ユーザー名とパスワードをそれぞれ [ユーザー名] と [パスワード] テキスト ボックスに指定する必要があります。ユーザー名には、最大で 30 文字まで入力できます。
ログイン情報を接続の一部として保存しない場合は、[ユーザー名とパスワードを保存する] をオフにします。これは、データベースのセキュリティを維持するのに役立ちます。ただし、オフにした場合、デスクトップ クライアントからの接続時にユーザー名とパスワードを入力するよう求められます。
以下の例では、データベース認証を使用して oracl/dbdata の Oracle インスタンスへの接続を確立しています。
- [OK] をクリックして接続します。
ファイルが \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog に作成されます。
接続を別の場所に移動することができます。ただし、接続ファイルを置くディレクトリに対して、接続する必要のあるユーザーおよびアプリケーションが読み取り権限を持っていることを確認してください。
この接続からのデータを、ジオプロセシングやジオコード サービスなどのサービスのソースとして使用する場合は、ネットワーク上の共有の場所に接続ファイルを置くことが必要な場合があります。接続ファイルの共有の詳細については、「データを ArcGIS Server でアクセス可能にする」をご参照ください。
ArcGIS Server からの接続
Oracle と ArcGIS Server が別々のサーバー上で実行されている場合は、64 ビット Oracle クライアントを ArcGIS Server サイトのすべてのコンピューターにインストールします。Windows コンピューター上で、Oracle クライアント ディレクトリを PATH 変数に追加します。
ArcGIS Server が Linux サーバー上にインストールされている場合、ArcGIS Server にインストールされている init_user_param.sh スクリプトを Oracle クライアントおよびインスタンスに関する情報を含むように編集して、ArcGIS Server を再起動します。
ArcGIS Server で公開するサービスが、Oracle のデータベースまたはジオデータベースのデータを使用する場合、データベースを ArcGIS Server サイトに登録します。
Oracle クライアントのインストール
ArcGIS Server と Oracle が異なるサーバーにインストールされている場合、Oracle クライアント アプリケーションを ArcGIS Server サイトの各コンピューターにインストールする必要があります。インストールする Oracle クライアント アプリケーションのリリースが、接続先のデータベースのリリースと互換性があることを確認してください。
Oracle から Oracle Instant、Runtime、または Administrator Client を入手し、ArcGIS Server コンピューターにインストールできます。Oracle のドキュメントの指示に従って、Oracle クライアントをインストールします。
PATH 環境変数の設定 (Windows のみ)
ArcGIS Server Windows サーバー上の PATH 環境変数に、Oracle クライアントのインストール場所を設定します。PATH 環境変数の設定手順については、Microsoft Windows のドキュメントをご参照ください。
Oracle クライアントを構成して PATH 変数を設定する前に ArcGIS Server を実行していた場合、ArcGIS Server を再起動する必要があります。Windows の [サービス] インターフェイスから ArcGIS Server を再起動できます。
init_user_param.sh スクリプトの変更 (Linux のみ)
データベース クライアント ファイルをインストールしたら、ArcGIS Server にインストールされている init_user_param.sh スクリプトを、それらのクライアント ファイルを参照するように変更します。このスクリプトにアクセスするには、<ArcGIS Server installation directory>/arcgis/server/usr ディレクトリを参照します。
- 各コンピューターの ArcGIS Server のインストール所有者がデータベース クライアント ライブラリに対する読み取りおよび実行以上の権限を持っていることを確認します。
- テキスト エディターで init_user_param.sh スクリプトを開きます。
- 「#」で始まる各行からコメント記号 (export) を削除します。
Oracle Administrator、Developer、または Runtime クライアントがインストールされている場合、export で始まるすべての Oracle の行からコメント記号を削除します。
# # To connect to Oracle # export ORACLE_BASE=<Oracle_Installdir>/app export ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1 export ORACLE_SID=<set when applicable> export TNS_ADMIN=<set when applicable. e.g.$ORACLE_HOME/network/admin> export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
Oracle Database Instant Client ライブラリを使用している場合は、次の例のように、コメントを外して $LD_LIBRARY_PATH を設定するだけで済みます。
# # To connect with Oracle Instant Client # export LD_LIBRARY_PATH=<Location_to_instantclient>:$LD_LIBRARY_PATH
- export 変数の値を設定します。
- Oracle Administrator、Developer、または Runtime クライアントの場合、以下の変数のコメントを解除し、実装に固有の情報を使用して値を設定します。
ORACLE_BASE=<Oracle_Installdir>
<Oracle_Installdir> は、Oracle クライアントがインストールされている最上位ディレクトリのパスと名前です。
ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1
これは、Oracle クライアント ライブラリ ファイルのパスです。ORACLE_HOME を、これらが存在するディレクトリに設定します。デフォルトでは、ディレクトリ名は client_1 ですが、使用しているインストールのディレクトリ名は異なっている場合があります。
- Oracle システム ID (SID) を使用して接続する場合は、ORACLE_SID= を、使用しているデータベースの Oracle システム ID に設定します。Easy Connect (簡易接続) 文字列を使用して接続する場合は、この行をコメント化します。
- TNS_ADMIN= を、Oracle クライアントの TNS 管理ファイルの場所に設定します。簡易接続文字列を使用して接続する場合、この値を設定する必要はなく、この行をコメント化する必要があります。
- Oracle Instant クライアントの場合、LD_LIBRARY_PATH 変数のみをコメント解除して値を設定し、<Location_to_instantclient> を、Oracle Instant クライアント ファイルが存在する場所のパスとディレクトリ名に置き換えます。
- ArcGIS Server と Oracle が同じコンピューター上にインストールされている場合は、次の変数のコメントを解除して値を設定します。
- ORACLE_BASE=<Oracle_Installdir>
<Oracle_Installdir> は、Oracle がインストールされている場所の最上位ディレクトリのパスおよび名前です。
- ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1
これは、Oracle ライブラリ ファイルのパスです。ORACLE_HOME を、これらが存在するディレクトリに設定します。デフォルトでは、ディレクトリ名は db_<n> ですが、使用しているインストールのディレクトリ名は異なっている場合があります。
- Oracle システム ID (SID) を使用して接続する場合は、ORACLE_SID= を、使用しているデータベースの Oracle システム ID に設定します。Easy Connect (簡易接続) 文字列を使用して接続する場合は、この行をコメント化します。
- TNS_ADMIN= を、Oracle クライアントの TNS 管理ファイルの場所に設定します。簡易接続文字列を使用して接続する場合、この値を設定する必要はなく、この行をコメント化する必要があります。
- ORACLE_BASE=<Oracle_Installdir>
- Oracle Administrator、Developer、または Runtime クライアントの場合、以下の変数のコメントを解除し、実装に固有の情報を使用して値を設定します。
- スクリプトを保存して閉じます。
- ArcGIS Server サイトの各コンピューターで init_user_param.sh を構成したら、各コンピューターで startserver.sh スクリプトを実行して ArcGIS Server を再起動します。
./startserver.sh
データベースの登録
Web サービスで、Oracle に格納された Oracle データベースまたはジオデータベース内のデータを使用する場合は、そのデータベースまたはジオデータベースを ArcGIS Server サイトに登録します。ArcMap または ArcGIS Server Manager を使用して登録できます。