Esri Ubuntu AMI を使用して Amazon Web Services (AWS) 上に ArcGIS Server サイトを作成した場合、[エンタープライズ ジオデータベースの作成 (Create Enterprise Geodatabase)] ジオプロセシング ツールを呼び出す Python スクリプトを使用して、インスタンスに含まれる PostgreSQL データベース クラスターにジオデータベースを作成できます。
ArcGIS Server Cloud Builder on Amazon Web Services を使用して AWS 上に ArcGIS Server サイトを作成した場合、PostgreSQL 内に 2 つのエンタープライズ ジオデータベースが作成されます。さらにジオデータベースが必要な場合 (たとえば、使用するジオデータベースの名前や場所をカスタマイズする場合や、独自の不連続データを保持する複数の部署が存在するため、それぞれに専用ジオデータベースが必要な場合)、追加ジオデータベースを作成できます。
AWS Management Console を使用して手動でサイトを設定した場合、ジオデータベースは作成されません。ArcGIS Server サイトで、AWS 上の PostgreSQL データベース クラスター内のジオデータベースを使用する場合、それらを作成する必要があります。
AWS 上で動作する PostgreSQL データベース クラスター内にジオデータベースを作成し、ArcGIS Server サイトに登録する手順を以下に示します。
- ArcGIS Server サイト (SITEHOST) への SSH 接続を確立します。
これを実行するには、セキュリティ グループで SSH ポート (22) を開けておく必要があります。
- テキスト エディターに次のスクリプトをコピーします。
#Import arcpy module import arcpy arcpy.CreateEnterpriseGeodatabase("PostgreSQL", "<aws instance name>", "<new geodatabase name>", "DATABASE_AUTH", "postgres", "<postgres password>", "", "sde", "<sde password>", "", "/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen/keycodes")
- サイトの情報に合わせて大なり小なり記号 (<>) 内の値を変更して、ファイルを拡張子 .py のファイルで保存します。
- コマンド シェルを開いて、スクリプトを指すよう環境変数を設定します。
- スクリプトを実行して、ジオデータベースを作成します。
指定した情報が正しい場合、ジオデータベースが正しく作成されたことを示すメッセージが表示されます。エラー メッセージが表示された場合は、指定した情報が正しいかどうかを確認してください (たとえば、使用したパスワードが正しいか、データベース名が有効かなど)。
ヒント:
data/pg_log の PostgreSQL ログ ファイルで、拡張エラー メッセージを確認してください。
- このスクリプトをテキスト エディターにコピーして新しいジオデータベースに接続し、ログイン ロールとそれに対応するスキーマを作成します。あるいは、既存のログイン ロールを指定して、そのスキーマをデータベース内に作成できます。
#Import arcpy module import arcpy arcpy.CreateDatabaseConnection_management("<path to directory where connection file to be created>", "<connection file name>.sde", "POSTGRESQL", "<aws instance name>", "DATABASE_AUTH", "postgres", "<postgres password>", "<geodatabase name>", "SAVE_USERNAME") arcpy.CreateDatabaseUser_management("<path to directory with connection file>/<connection file name>.sde", "DB", "<login role name>", "<login password>")
- サイトのデータベースとログイン ロールの情報に合わせて大なり小なり記号 (<>) 内の値を変更して、拡張子 .py のファイルで保存します。
たとえば、ArcGIS Server Cloud Builder on Amazon Web Services を使用して作成されたデフォルト ログイン ロール (所有者) で、新しいジオデータベース内にデータを作成する場合、スクリプト内で所有者のログイン ロールを指定します。
- コマンド シェルを開いて、スクリプトを指すよう環境変数を設定します。
- スクリプトを実行して、ログイン ロールとスキーマ (または既存のログイン ロールのスキーマ) を作成します。
スクリプトでは、スキーマに対する使用権限がパブリックに付与されます。
- 新しいジオデータベースにデータを作成する各ログイン ロールに対して、前の手順を繰り返します。
- ArcGIS Server サイトの ArcGIS Server Manager にサイン インし、各ジオデータベースをサイトに登録します。
これにより、公開するサービスがデータにアクセスできるようになります。データベースの登録手順については、ArcGIS Server ヘルプの「Manager を使用したデータの ArcGIS Server への登録」をご参照ください。
これで、新しいジオデータベースが完成しました。ログイン ロールとユーザー スキーマをデータベースに追加する必要があります。