ArcGIS から、エンタープライズ ジオデータベースを含むデータベースなどの PostgreSQL データベースに接続するために必要な手順を以下にまとめます。
- データベース名が ArcGIS の要件を満たしていることを確認します。
- PostgreSQL が、アクセスが必要な ArcGIS クライアント コンピューターからの接続を受け入れることを確認します。
- データベース接続を作成します。
- PostgreSQL データベース内のデータを参照する ArcGIS Server Web サービスを公開するには、データベース接続ファイルを ArcGIS Server サイトに登録します。
PostgreSQL クライアント ファイルは ArcGIS Pro および ArcGIS Server とともにインストールされます。クライアントにアクセスするために、PostgreSQL クライアントをインストールしたり環境変数を設定したりする必要はありません。
接続を許可するためのデータベースの構成
デフォルトでは、PostgreSQL データベース クラスターには、同じコンピューター上で実行されているクライアントのみが接続できます。 リモート クライアントがデータベース クラスターに接続できるようにするには、PostgreSQL の pg_hba.conf 構成ファイルを変更します。 pg_hba.conf ファイルに配置するエントリは、サイトでのセキュリティ ポリシーおよび構成に応じて変わります。
また、必要なログインまたはグループ ロールがデータベースに対する CONNECT 権限を持っていることを確認します。
PostgreSQL サーバーからリモートにあるコンピューター上のクライアントから接続できるようにするには、次の手順を実行します。
- pg_hba.conf ファイルを変更する前に、このファイルのバックアップ コピーを作成します。
- テキスト エディターで pg_hba.conf ファイルを開きます。
- 接続するクライアント コンピューターの IP アドレスを追加し、各 IP アドレスが接続できる 1 つまたは複数のデータベースを指定し、接続に使用されるクライアント認証方法を指定します。
詳細については、PostgreSQL のドキュメントをご参照ください。
- PostgreSQL が Linux サーバーにインストールされている場合、pg_ctl reload や pg_reload_conf() などの PostgreSQL 関数を使用して、サーバー構成設定を再読み込みします。
- データベース クラスターへの接続権限がユーザーに付与されていることを確認します。
デフォルトでは、Public グループ ロールには PostgreSQL データベース クラスター内のすべてのデータベースに対する CONNECT 権限があります。このため、各ログインまたはグループのロールに特定のデータベースの CONNECT 権限を割り当てる必要があるのは、Public から CONNECT 権限を削除した場合だけです。
データベースへの接続
以下に示すように、ArcGIS Pro の [データベース接続] ダイアログ ボックスを使用して、データベースに接続できます。
または、ArcGIS Pro で [データベース接続の作成 (Create Database Connection)] ツールを実行するか、Python を使用して ArcGIS Server コンピューターから [データベース接続の作成 (Create Database Connection)] コマンドを実行して、データベースに接続するデータベース接続ファイル (*.sde) を作成することができます。
データベース接続ファイルを ArcGIS Server で使用するには、ユーザー情報を接続ファイルに保存する必要があります。
ヒント:
接続に使用されるアカウントに、データベースとアカウントがアクセスする必要があるデータに対する適切な権限が付与されていることを確認します。 詳細については、「PostgreSQL でのジオデータベースの権限」および「ArcGIS で PostgreSQL データベースを使用するための権限」をご参照ください。
ArcGIS Pro の [データベース接続] ダイアログ ボックスから PostgreSQL データベースに接続するには、次の手順に従います。
- ArcGIS Pro で [カタログ] ウィンドウを開きます。
- [データベース] を右クリックして [新しいデータベース コネクション] をクリックします。
- [データベース プラットフォーム] ドロップダウン リストから [PostgreSQL] を選択します。
- [インスタンス] テキスト ボックスに、データベース クラスター名または PostgreSQL がインストールされているサーバーの IP アドレスを入力します。
たとえば、PostgreSQL データベース クラスターの名前が ficus である場合、[インスタンス] テキスト ボックスに「ficus」と入力します。 IPV6 アドレスを指定する場合には、アドレスを括弧で囲みます。 たとえば、サーバーの IPV6 アドレスが 1111:aa1:0:1:f111:a222:33f3:b4bb の場合、[インスタンス] テキスト ボックスに「[1111:aa1:0:1:f111:a222:33f3:b4bb]」と入力します。
PostgreSQL データベース サービスへの接続などの例については、「ArcGIS Pro でのデータベース接続」をご参照ください。
注意:
PostgreSQL データベース クラスターがデフォルト (5432) 以外のポートで接続を待ち受ける場合は、インスタンスにポート番号を含める必要があります。 たとえば、PostgreSQL がサーバー mamabear にインストールされており、ポート 49200 で接続を待ち受ける場合は、[インスタンス] テキスト ボックスに「mamabear,49200」と入力します。
- [認証タイプ] として [データベース認証] を選択します。
- 有効なデータベース ユーザー名とパスワードを [ユーザー名] テキスト ボックスと [パスワード] テキスト ボックスにそれぞれ入力します。
- ログイン情報を接続の一部として保存しない場合は、[ユーザー名/パスワードの保存] をオフにします。これは、データベースのセキュリティを維持するのに役立ちます。 ただし、オフにした場合、接続時にユーザー名とパスワードを入力するよう求められます。
注意:
データベースへのアクセス権を ArcGIS Web サービスに付与する接続ファイルの場合やこの接続ファイルを経由してアクセスするデータを ArcGIS Pro で検索する場合は、[ユーザー名とパスワードを保存する] チェックボックスをオンにする必要があります。
- PostgreSQL データベース クラスター上の接続先データベースの名前を入力または選択します。
- [OK] をクリックして、接続ファイルを作成します。
データベース接続が [カタログ] ウィンドウの [データベース] に表示され、接続ファイル (*.sde) が ArcGIS Pro のプロジェクト ディレクトリに作成されます。
ファイルの名前を変更するには、[カタログ] ウィンドウで新しい名前を入力し、Enter キーを押します。
ArcGIS Server に接続を登録します。
ArcGIS Server サイトでデータにアクセスできるようにするには、作成したデータベース接続ファイルを使用して、ArcGIS Pro に登録済みデータ ストアを追加するか、ポータルにデータ ストア アイテムを追加します。