Wenn Sie mit dem Esri Ubuntu-AMI eine ArcGIS Server-Site unter Amazon Web Services (AWS) erstellt haben, können Sie mit einem Python-Skript, das das Geoverarbeitungswerkzeug Enterprise-Geodatabase erstellen aufruft, Geodatabases in dem PostgreSQL-Datenbank-Cluster erstellen, das in der Instanz enthalten ist.
Wenn Sie zum Erstellen der ArcGIS Server-Site unter AWS ArcGIS Server Cloud Builder on Amazon Web Services verwendet haben, wurden in PostgreSQL zwei Enterprise-Geodatabase erstellt. Sie können nach Wunsch zusätzliche Geodatabases erstellen, wenn Sie beispielsweise den Namen oder Speicherort der zu verwendenden Geodatabases anpassen möchten oder in Ihrem Unternehmen mehrere Abteilungen jeweils ihre eigenen, diskreten Daten verwalten und eigene Geodatabases benötigen.
Wenn Sie die Site manuell mit der AWS Management Console einrichten, werden keine Geodatabases erstellt. Um Geodatabases in einem PostgreSQL-Datenbank-Cluster unter AWS mit der ArcGIS Server zu verwenden, müssen Sie sie erstellen.
Führen Sie die folgenden Schritte aus, um eine Geodatabase in einem PostgreSQL-Datenbank-Cluster unter AWS zu erstellen und bei der ArcGIS Server-Site zu registrieren:
- Erstellen Sie eine SSH-Verbindung mit der ArcGIS Server-Site (SITEHOST).
Dazu müssen Sie den SSH-Port (22) in der Sicherheitsgruppe öffnen.
- Kopieren Sie das folgende Skript in einen Texteditor:
#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")
- Ändern Sie die Werte in spitzen Klammern (<>) so, dass sie mit den Informationen für Ihre Site übereinstimmen, und speichern Sie die Datei mit der Erweiterung .py.
- Öffnen Sie eine Befehlsshell, und legen Sie Umgebungsvariablen fest, die auf das Skript zeigen.
- Führen Sie das Skript aus, um die Geodatabase zu erstellen.
Wenn die von Ihnen angegebenen Informationen richtig sind, erhalten Sie eine Meldung, die angibt, dass die Geodatabase erfolgreich erstellt wurde. Wenn Sie eine Fehlermeldung erhalten, stellen Sie sicher, dass Sie fehlerfreie Informationen angegeben haben (z. B. die richtigen Kennwörter und einen gültigen Datenbanknamen).
Tipp:
Überprüfen Sie die PostgreSQL-Protokolldatei unter data/pg_log auf ausführliche Fehlermeldungen.
- Kopieren Sie dieses Skript in einen Texteditor, um eine Verbindung zu der neuen Geodatabase herzustellen, und erstellen Sie eine Anmelderolle mit dem entsprechenden Schema. Alternativ dazu können Sie eine vorhandene Anmelderolle angeben, für die ein Schema in der Datenbank erstellt wird.
#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>")
- Ändern Sie die Werte in spitzen Klammern (<>) so, dass die Informationen zur Datenbank und zu den Anmelderollen für die Site übereinstimmen, und speichern Sie die Datei mit der Erweiterung .py.
Wenn beispielsweise die mit ArcGIS Server Cloud Builder on Amazon Web Services erstellte Standardanmelderolle "Besitzer" die Daten in der neuen Geodatabase erstellen soll, legen Sie die Anmelderolle des Besitzers im Skript fest.
- Öffnen Sie eine Befehlsshell, und legen Sie Umgebungsvariablen fest, die auf das Skript zeigen.
- Führen Sie das Skript aus, um eine Anmelderolle und ein Schema (oder ein Schema für eine vorhandene Anmelderolle) zu erstellen.
Das Skript erteilt „public“ USAGE-Berechtigungen für das Schema.
- Wiederholen Sie den vorherigen Schritt für jede Anmelderolle, die Daten in der neuen Geodatabase erstellt.
- Melden Sie sich bei ArcGIS Server Manager für die ArcGIS Server-Site an, und registrieren Sie jede Geodatabase bei der Site.
So stellen Sie den Zugriff der von Ihnen veröffentlichten Services auf die Daten sicher. Anweisungen zum Registrieren einer Datenbank finden Sie in der ArcGIS Server-Hilfe unter Registrieren von Daten bei ArcGIS Server mit Manager.
Nun ist eine neue Geodatabase vorhanden. Sie müssen der Datenbank Anmelderegeln und Benutzerschemas hinzufügen.