ArcGIS から Oracle への接続

ArcGIS クライアントから Oracle に接続するには、Oracle クライアントを ArcGIS クライアント コンピューターにインストールし、Oracle クライアントを参照する環境変数を設定して、ArcGIS からのデータベース接続を作成します。

ArcGIS Server データベース内のデータを参照する Oracle Web サービスを公開するには、データベース接続ファイルを ArcGIS Server サイトに登録します。

Oracle クライアント ソフトウェアのインストール

データベースに接続するすべての ArcGIS クライアント コンピューターに Oracle クライアント ソフトウェアをインストールする必要があります。 ArcGIS クライアントが動作するコンピューター上にソフトウェアをインストールする権限がない場合は、IT 部門に Oracle クライアントをインストールして構成してもらう必要があります。

接続先のデータベースのリリースと互換性がある Oracle クライアント アプリケーションのリリースをインストールします。

Oracle のドキュメントに記載されている手順に従って、Oracle から Oracle Instant、Runtime、または Administrator Client を入手し、クライアント コンピューターにインストールできます。

次の表の情報を使用して、使用する適切な Oracle クライアント構成を判断してください。

インストールの組み合わせ使用する構成

ArcGIS Server (単一コンピューターのサイト) および Oracle は同じサーバーにインストールされます。ArcGIS AllSource は別のコンピューターにインストールされます。

すべての Oracle コンピューターに 64 ビット ArcGIS AllSource クライアントをインストールし、PATH 変数を Oracle クライアント ホーム ディレクトリに設定します。

接続するファイルは Oracle データベース管理システムとともにインストールされているため、Oracle クライアントをサーバーにインストールする必要はありません。 LD_LIBRARY_PATH (Linux) または PATH (Microsoft Windows) システム変数が Oracle のホーム ディレクトリに設定されていることを確認します。

Oracle クライアントに tnsname を設定する場合は、ArcGIS Server および ArcGIS AllSource コンピューターで同じ名前を使用する必要があります。

ArcGIS Server は、DBMS とは別の 1 台以上のコンピューターにインストールされます。 ArcGIS AllSource は、Oracle および ArcGIS Server のどちらとも異なるコンピューター上にインストールされます。

すべての Oracle コンピューターに 64 ビット ArcGIS AllSource クライアントをインストールし、PATH 変数を Oracle クライアント ホーム ディレクトリに設定します。

すべての Oracle コンピューターに 64 ビット ArcGIS Server クライアントをインストールし、PATH (Windows) または LD_LIBRARY_PATH (Linux) システム変数が Oracle クライアント ホーム ディレクトリに設定されていることを確認します。

Oracle クライアントに tnsname を設定する場合は、ArcGIS Server および ArcGIS AllSource コンピューターで同じ名前を使用する必要があります。

ArcGIS Server および ArcGIS AllSource は同じサーバーにインストールされます。Oracle は別のサーバーにインストールされます。

64 ビット Oracle クライアントをすべての ArcGIS Server コンピューターにインストールします。 ArcGIS ServerArcGIS AllSource はいずれも、このクライアントを使用します。

PATH システム変数を Oracle クライアント ホーム ディレクトリに設定します。

ArcGIS ServerArcGIS AllSource、および Oracle は、1 台のコンピューターにインストールされます。

ArcGIS Server および ArcGIS AllSource は、Oracle データベース管理システムとともにインストールされた 64 ビット クライアント ファイルを使用して接続します。

PATH 変数を Oracle クライアント ホーム ディレクトリに設定します。

ArcGIS Server サイトに別のサーバーが含まれる場合は、サイト内の各サーバーに 64 ビット Oracle クライアントをインストールし、PATH 変数を Oracle クライアント ホーム ディレクトリに設定します。

ArcGIS AllSource からの接続

Oracle クライアントを ArcGIS AllSource コンピューターにインストールしたら、PATH 環境変数を Oracle クライアントの場所に設定して、データベース接続を作成します。

PATH 変数の設定

PATH コンピューター上の ArcGIS AllSource 環境変数に、Oracle Client のインストール場所を設定します。 Microsoft Windows 環境変数の設定手順については、PATH のドキュメントをご参照ください。

ArcGIS AllSource 変数を設定する前に PATH がコンピューター上で開かれた場合、ArcGis Pro を再起動して新しい設定を有効にします。

データベースへの接続

データベース コネクションを追加するには、[データベース コネクション] ダイアログ ボックスまたは [データベース コネクションの作成 (Create Database Connection)] ジオプロセシング ツールを使用します。

[データベース接続] ダイアログ ボックスを使用して Oracle に接続する場合の手順を次に示します。

  1. ArcGIS AllSource[カタログ] ウィンドウを開きます。
  2. [データベース] を右クリックして [新しいデータベース コネクション] をクリックします。
  3. [データベース プラットフォーム] ドロップダウン リストから [Oracle] を選択します。
  4. [接続タイプ] ドロップダウン メニューから次のいずれかの接続オプションを選択します。
    • [基本] - Oracle の簡易接続文字列を使用して接続するには、このオプションを選択します。

      必ず、簡易接続が許可されるように Oracle インスタンスを構成してください。 Oracle クライアントを完全にインストールするが、接続に Easy Connect (簡易接続) 構文を使用する場合、Easy Connect (簡易接続) の使用を許可するため、クライアント側で sqlnet.ora ファイルを構成し、Easy Connect (簡易接続) 構文を許可するように Oracle サーバーを構成してください。

    • [TNS] - 各 ArcGIS クライアント コンピューターで TNS 接続を使用するように Oracle クライアントを構成した場合は、このオプションを選択します。

      [ネット サービス名] フィールドに tnsnames.ora ファイルで定義したネット サービス名を入力します。

      次の例では、tnsnames.ora ファイルでネット サービス名が myoratnsname と定義されています。

      ネット サービス名 myoratnsname を使用した Oracle への接続

  5. 基本接続タイプを使用する場合、次の情報を入力します。
    1. Oracle インスタンスがデフォルトの Oracle のポート番号を待ち受けていない場合は、[ポート] フィールドにデフォルト以外のポート番号を入力します。
    2. [ホスト名] テキスト フィールドに次のいずれかを入力します。

      • Oracle サーバーの名前 (例: myserver)。
      • Oracle サーバーの IP アドレス (例: 10:10:10:10)。 IPV6 アドレスの場合、アドレスを角括弧で囲みます (例: [4000:ab5:0:0:f666:d191:77f5:e2bd])。
      • Oracle サーバー名を含む URL (例: //myserver)。

    3. [データベース] フィールドに Oracle サービス名または ID を入力します。

    次の例では、Oracle サーバー名は myserver、Oracle サービス名は myoracledb で、通信にポート 60000 を使用します。

    サーバー名 myserver とサービス名 myoracledb の簡易接続情報を使用し、デフォルト以外のポート 60000 を使用して、Oracle データベースに接続

  6. データベースに接続する際に使用する認証タイプとして、[データベース認証] または [オペレーティング システム認証] のいずれかを選択します。
    • [オペレーティング システム認証] を選択した場合、ユーザー名とパスワードを入力する必要はありません。コネクションは、オペレーティング システムへのサイン インに使用されたログイン名とパスワードを使用して確立されます。 オペレーティング システムに使用するログイン情報がデータベースへのログインでは無効である場合、コネクションは確立されません。 Oracle Instant Client を使用している場合、オペレーティング システム認証を使用できません。
      注意:

      Oracle でオペレーティング システム認証を使用する場合は、オペレーティング システムのログインに os_authent_prefix 文字列 (デフォルトでは OPS$) の接頭辞が付加されて、USERNAME テーブルに格納されます。 ジオデータベースに接続するときに入力できるユーザー名の最大文字数は、30 文字です。 これらの場合、ArcGIS はユーザー名を引用符で囲んでデータベースに渡します。 30 文字の制限には、それらの引用符も含まれます。

    • [データベース認証] を選択した場合、有効なデータベース ユーザー名とパスワードをそれぞれ [ユーザー名][パスワード] テキスト ボックスに指定する必要があります。 ユーザー名には、最大で 30 文字まで入力できます。

      ログイン情報をコネクションの一部として保存しない場合は、[ユーザー名/パスワードの保存] をオフにします。これは、データベースのセキュリティを維持するのに役立ちます。 ただし、オフにした場合、接続時にユーザー名とパスワードを入力するよう求められます。

    注意:

    データベース認証を使用してデータベースへのアクセス権を ArcGIS Web サービスに付与する接続ファイルの場合やこの接続ファイルを経由してアクセスするデータを ArcGIS AllSource で検索する場合は、[ユーザー名とパスワードを保存する] チェックボックスをオンにする必要があります。

  7. [接続ファイル名] フィールドに接続ファイルの名前を入力します。

    接続情報を指定すると、デフォルト名が作成されます。 デフォルトを使用するか、より説明的なファイル名を入力できます。

    これは、[カタログ] ウィンドウとビューに表示される名前であり、ディスクに保存される .sde ファイルの名前です。

  8. [整合チェック] をクリックし、接続情報が有効で、データベースにアクセスできることを確認します。

    データベースにジオデータベースが含まれ、接続が有効である場合は、[ジオデータベース プロパティ] タブがアクティブになります。 必要に応じて、ジオデータベースの接続プロパティを変更して、デフォルト バージョン以外の従来のバージョンに接続したり、接続をブランチ バージョン接続として構成したり、履歴モーメントに接続したりできます。

  9. [OK] をクリックして、接続ファイルを作成します。

データベース接続が [カタログ] ウィンドウの [データベース] に表示され、接続ファイル (.sde) が ArcGIS AllSource のプロジェクト ディレクトリに作成されます。

ArcGIS Server からの接続

64 ビット Oracle クライアントを ArcGIS Server サイトのすべてのコンピューターにインストールしたら、変数を設定し、データベース接続ファイルを作成し、権限を付与して、データベースを ArcGIS Server サイトに登録します。

データベース コネクションファイルの作成

上記のとおりArcGIS AllSource[データベース接続] ダイアログ ボックスを使用して、データベース接続ファイルを作成します。

または、ArcGIS AllSource[データベース接続の作成 (Create Database Connection)] ツールを実行するか、Python を使用して ArcGIS Server コンピューターから [データベース接続の作成 (Create Database Connection)] コマンドを実行して、データベースに接続するデータベース接続ファイル (.sde) を作成することができます。

以下は、ArcGIS Server で使用するデータベース接続ファイルの作成に固有の情報です。

  • ユーザー情報を接続ファイルに保存する必要があります。
  • オペレーティング システム認証を使用する場合は、ArcGIS Server アカウントにドメイン アカウントを使用し、そのドメイン アカウントを Oracle データベースに追加します。
  • TNS 接続を使用する場合は、ArcGIS Server サイトのすべてのコンピューターと公開元の ArcGIS AllSource クライアントの tnsnames.ora ファイルで、同じネット サービス名を使用していることを確認します。

権限の付与

データベースへの接続に使用するデータベース ユーザー、ロール、ArcGIS Server アカウント (オペレーティング システム認証を使用している場合) に対して、公開されるデータにアクセスするためのデータベースの権限を付与する必要があります。 付与する権限とその前提となる条件は次のとおりです。

権限理由

CREATE SESSION

データベースへの接続に必要。

CREATE TABLE

選択セットが存在すると、ログ ファイル テーブルがジオデータベースに作成されます。 ユーザーにこの権限がない場合、sde ユーザーのスキーマにログ ファイル テーブルが作成されます。

公開されるデータセットに対する SELECT 権限

公開されるデータセットに対する SELECT 以上の権限をユーザーまたは ArcGIS アカウントに付与します。

編集可能なフィーチャ サービスに公開されるデータに対する INSERT、UPDATE、または DELETE 権限

フィーチャ サービスを使用してデータを編集するには、データセットを編集できる十分な権限を付与する必要があります

上記の最初の 2 つの権限はデータベース管理者が付与する必要があります。 データがジオデータベース内にある場合、データの所有者はデータセットに対する必要な権限を付与する必要があります。 データがデータベース内にある場合は、データの所有者が ArcGIS のデータセットに対する権限を付与するか、データベース管理者がデータベース ツールを使用して必要な権限を付与できます。

スタンドアロンまたはフェデレートされた ArcGIS Server サイトの管理データベースとしてジオデータベースを登録する場合、接続するアカウントは、ジオデータベースのデータを作成する権限を持っている必要があります。

詳細については、「Oracle でのジオデータベースの権限」または「ArcGIS で Oracle データベースを使用するための権限」をご参照ください。

データベースの登録

ArcGIS Server サイトでデータにアクセスできるようにするには、作成したデータベース接続ファイルを使用して、ArcGIS AllSource登録済みデータ ストアを追加するか、ポータルにデータ ストア アイテムを追加します。