PostgreSQL でのジオデータベースの設定

このトピックは、ArcGIS for Desktop Standard および ArcGIS for Desktop Advanced にのみ該当します。

ほとんどの場合は、[エンタープライズ ジオデータベースの作成(Create Enterprise Geodatabase)] ジオプロセシング ツールまたは Python スクリプトを使用して、PostgreSQL データベース管理システムにジオデータベースを作成できます。

[エンタープライズ ジオデータベースの作成(Create Enterprise Geodatabase)] ツールは、PostgreSQL のデフォルト テンプレートを使用してデータベースを作成し、sde ログイン ロールとスキーマを作成し、sde ログイン ロールにジオデータベースを作成する権限を付与し、ジオデータベースを作成します。別のテンプレートを使用してデータベースを作成する場合は、まずデータベース クラスタ内にデータベースを作成してから、[エンタープライズ ジオデータベースの作成(Create Enterprise Geodatabase)] ツールまたはスクリプトを実行し、事前に作成したデータベースの名前を指定します。

また、[エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールまたは Python スクリプトを使用して、PostgreSQL データベースにジオデータベースを作成することもできます。[エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールまたはスクリプトを使用して PostgreSQL にジオデータベースを作成する唯一の共通する理由は、ジオデータベースの作成者が postgres スーパーユーザのパスワードにアクセスできない場合のみです。この場合、データベース管理者は、sde ログイン ロール、データベース、および sde スキーマを作成し、sde ユーザにジオデータベースの作成に必要な権限を付与することができます。その後、sde ユーザはデータベースに接続し、[エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールまたはスクリプトを使用して、データベース内でジオデータベース機能を有効にできます。

ジオデータベースを設定する前に、使用するデータベース、ArcGIS、およびハードウェアの組み合わせがサポートされていることを、Resource Center にあるシステム要件から確認してください。

Linux サーバ上の PostgreSQL でのジオデータベースの設定

Linux 上の PostgreSQL にジオデータベースを作成する手順の概要は、次のとおりです。

  1. サポートされている PostgreSQL のリリースを入手しインストールし、データベース クラスタを設定します。

    PostgreSQL のインストールは、Esri Customer Care ポータルからダウンロードできます。このインストールを使用する場合、ArcGIS で PostgreSQL を使用するのにデフォルト以外の設定は必要ありません。デフォルト以外の設定を使用する場合は、ロケールと場所の設定を変更します。

    あるいは、PostgreSQL のインストールを自分で入手することもできます。PostgreSQL のインストールや設定に関する手順については PostgreSQL Web サイト のドキュメントをご参照ください。

  2. 接続を受け入れるようにデータベース クラスタを設定します。

    これには、pg_hba.conf ファイルを変更して、データベース クラスタがリモート接続を受け入れるようにすることが含まれます。

  3. postgres ユーザに次の環境変数が正しく設定されていなければ設定します。
    • PGDATA:これは、PostgreSQL のインストールによって設定されています。設定されていない場合は、PostgreSQL のインストール ディレクトリの下にあるデータ ディレクトリの場所に設定されます。
    • LD_LIBRARY_PATH:LD_LIBRARY_PATH 変数を PostgreSQL の lib ディレクトリに設定します。lib ディレクトリの場所は、PostgreSQL をインストールした方法によって異なります。PostgreSQL のインストールにおける正しい場所を調べるには、postgres ユーザで pg_config を実行します。LD_LIBRARY_PATH を、PKGLIBDIR に対して返される値に設定します。
    • PATH: postgresql/bin を含むように PATH 変数を設定します。
  4. ジオデータベースを作成する ArcGIS クライアントをインストールします。
  5. Esri Customer Care ポータルから PostgreSQL クライアント ライブラリ(ArcGIS クライアントが Windows 上にある場合)または RPM(ArcGIS クライアントが Linux 上にある場合)をダウンロードし、それを前の手順でインストールした ArcGIS クライアントの bin ディレクトリに配置します。詳細については、「PostgreSQL への接続の設定」をご参照ください。
  6. PostgreSQL 内のジオデータベースを ArcGIS for Server で使用する場合、ArcGIS アカウントに対して次の変数を設定または変更します。
    • SDEHOME: この変数を /home/ags/arcgis/server に設定します。

      export SDEHOME=/home/ags/arcgis/server

    • PG_HOME: PG_HOME を /opt/PostgreSQL/9.0 に設定します。

      export PG_HOME=/opt/PostgreSQL/9.0

    • PATH: $PATH:$PG_HOME/bin:$SDEHOME/bin を PATH 変数に追加します。

      export PATH=$PATH:$PG_HOME/bin:$SDEHOME/bin

    • LD_LIBRARY_PATH:$LD_LIBRARY_PATH:$PG_HOME/lib:$SDEHOME/lib を LD_LIBRARY_PATH 変数に追加します。

      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PG_HOME/lib:$SDEHOME/lib

  7. st_geometry.so ライブラリを PostgreSQL インストール ディレクトリに移動します。

    PostgreSQL 9.0 の st_geometry.so ライブラリ は ArcGIS クライアント インストール ディレクトリの DatabaseSupport/PostgreSQL/Linux64 ディレクトリにあります。ArcGIS クライアントのこの場所からファイルを移動させ、ルート ユーザとして PostgreSQL サーバにログインし、st_geometry.so ファイルを PostgreSQL の lib ディレクトリに配置します(これは、LD_LIBRARY_PATH 環境変数の設定先と同じ場所です)。

    ArcGIS 10.1 Service Pack 1 以降、DatabaseSupport ディレクトリには、9.1 という名前のディレクトリが含まれます。PostgreSQL 9.1 データベースに接続する場合、このディレクトリにある st_geometry.so ライブラリを使用します。

    ArcGIS 10.2 以降、DatabaseSupport ディレクトリには、9.2 という名前のディレクトリも含まれます。PostgreSQL 9.2 データベースに接続する場合、このディレクトリにある st_geometry.so ライブラリを使用します。

    有効な st_geometry.so ライブラリを PostgreSQL の lib ディレクトリに配置していない場合は、ジオデータベースを作成できません。

    注意注意:

    ArcGIS for Server の DatabaseSupport ディレクトリは、700 に設定された権限を使用して作成されます。root としてログインして st_geometry.so ファイルを PostgreSQL lib ディレクトリに移動するときは、ファイルへの権限を 755 に変更します。変更しない場合、postgres ユーザはファイルにアクセスしてジオデータベースを作成できません。

  8. 表領域を、データベースを格納するデータベース クラスタに作成します。表領域を作成しない場合は、pg_default 表領域を使用します。
  9. 次の手順のいずれかで、データベース、sde ユーザとスキーマ、およびジオデータベースを作成します。

    あるいは、データベース、sde ユーザおよびスキーマを手動で作成してから、[エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールをリモートの Windows コンピュータから実行するか、ArcGIS Engine と Geodatabase Update エクステンションまたは ArcGIS for Server Enterprise(Standard または Advanced)がインストールされている Linux コンピュータ上で EnableEnterpriseGeodatabase を呼び出す Python スクリプトを実行します。

Windows サーバ上の PostgreSQL でのジオデータベースの設定

Windows 上の PostgreSQL にジオデータベースを作成する手順の概要は、次のとおりです。

  1. サポートされている PostgreSQL のリリースを入手しインストールし、データベース クラスタを設定します。

    PostgreSQL のインストールは、Esri Customer Care ポータルからダウンロードできます。このインストールを使用する場合、ArcGIS で PostgreSQL を使用するのにデフォルト以外の設定は必要ありません。デフォルト以外の設定を使用する場合は、ロケールと場所の設定を変更します。

    あるいは、PostgreSQL のインストールを自分で入手することもできます。PostgreSQL のインストールや設定に関する手順については PostgreSQL Web サイト のドキュメントをご参照ください。

  2. 接続を受け入れるようにデータベース クラスタを設定します。

    これには、pg_hba.conf ファイルを変更して、データベース クラスタがリモート接続を受け入れるようにすることが含まれます。

  3. ジオデータベースを作成する ArcGIS クライアントをインストールします。
  4. Esri Customer Care ポータルから PostgreSQL クライアント ライブラリ(ArcGIS クライアントが Windows 上にある場合)または RPM(ArcGIS クライアントが Linux 上にある場合)をダウンロードし、それを前の手順でインストールした ArcGIS クライアントの bin ディレクトリに配置します。詳細については、「PostgreSQL への接続の設定」をご参照ください。
  5. st_geometry ライブラリを PostgreSQL インストール ディレクトリにコピーします。

    PostgreSQL 9.0 で使用する st_geometry.dll ファイルは、ArcGIS クライアント インストール ディレクトリの DatabaseSupport ディレクトリにあります。st_geometry.dll ファイルを ArcGIS クライアントから PostgreSQL サーバ上の PostgreSQL の lib ディレクトリに移動します。

    PostgreSQL 9.1 データベースに接続する場合、9.1 ディレクトリにある st_geometry.dll ライブラリを使用します。

    PostgreSQL 9.2 データベースに接続する場合、9.2 ディレクトリにある st_geometry.dll ライブラリを使用します。

    注意注意:

    適切な st_geometry.dll ライブラリを PostgreSQL の lib フォルダに配置していない場合は、ジオデータベースを作成できません。

    また、st_geometry.dll では、Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ(x64)が必要です。このパッケージが PostgreSQL サーバ上に存在しない場合は、Microsoft のサイトからダウンロードしてインストールしてください。

  6. 表領域を、データベースを格納するデータベース クラスタに作成します。表領域を作成しない場合は、pg_default 表領域を使用します。
  7. 次の手順のいずれかで、データベース、sde ユーザとスキーマ、およびジオデータベースを作成します。

    あるいは、データベース、sde ユーザ、スキーマを手動で作成してから、[エンタープライズ ジオデータベースの有効化(Enable Enterprise Geodatabase)] ジオプロセシング ツールまたは Python スクリプトを実行して、事前に作成されたデータベースにジオデータベースを作成できます。

オプションの追加設定

接続に ArcSDE サービスを使用する場合や、同じ PostgreSQL データベース クラスタ内に複数のジオデータベースが必要な場合など、ジオデータベースの設定に別のツールが必要になる場合があります。同じデータベース クラスタに複数のジオデータベースを作成する場合の情報については、「PostgreSQL の複数のジオデータベース」をご参照ください。

ArcSDE サービスを使用するには、ArcSDE アプリケーション サーバをインストールして設定する必要があります。そのための手順については、ArcSDE アプリケーション サーバに付属するインストール ガイドをご参照ください。ArcSDE アプリケーション サーバのインストールは、Esri Customer Care ポータルからダウンロードできます。

関連トピック

5/10/2014