Skip To Content

Verschieben einer Geodatabase in PostgreSQL nach ArcGIS Server auf AWS

Sie können eine vorhandene Enterprise-Geodatabase in PostgreSQL von einem lokalen Server in eine ArcGIS Enterprise on Amazon Web Services-Instanz oder von einer ArcGIS Enterprise on Amazon Web Services-Instanz in eine andere Instanz verschieben, indem Sie eine Sicherungsdatei verwenden.

Erstellen Sie dazu eine Sicherung der Quell-Geodatabase, übertragen Sie die Sicherungsdatei auf die Zielinstanz von ArcGIS Enterprise on Amazon Web Services, erstellen Sie eine Datenbank und Anmelderollen im Ziel-PostgreSQL-Datenbank-Cluster, und stellen Sie die Datenbank wieder her.

Überprüfen der benutzerdefinierten Variableneinstellungen

Alle benutzerdefinierten Einstellungen, die sich im Quelldatenbank-Cluster befanden, die Sie beibehalten möchten, müssen der neuen Datenbank-Cluster hinzugefügt werden. Die Konfigurationseinstellungen werden in der Datei "postgresql.conf" gespeichert. Erstellen Sie eine Kopie dieser Datei und verschieben Sie sie in das Zieldatenbank-Cluster der ArcGIS Enterprise on Amazon Web Services-Instanz.

Die Datei "postgresql.conf" auf der ArcGIS Enterprise on Amazon Web Services-Instanz befindet sich auf dem bereitgestellten Laufwerk unter "/data".

Sicherungskopie einer Quell-Geodatabase erstellen

Sie können eine Sicherung der Datenbank erstellen, um die Datendateien auf eine ArcGIS Enterprise on Amazon Web Services-Instanz zu übertragen.

Verwenden Sie die Anwendung "PostgreSQL pg_dump", um eine Sicherungsdatei zu erstellen.

  1. Stellen Sie ein Verbindung zu dem Server her, auf dem die Geodatabase gespeichert ist.
  2. Führen Sie den Befehl "pg_dump" über die Shell-Eingabeaufforderung aus, um eine Sicherung der Datenbank zu erstellen.
    pg_dump -U postgres -F c > /data/spdbbu11012.dump

    Weitere Informationen zur Anwendung "pg_dump" finden Sie in der PostgreSQL-Dokumentation.

Sicherungsdatei in die Zielinstanz verschieben

Es gibt mehrere Möglichkeiten, die Sicherungsdatei auf die Zielinstanz zu übertragen. Weitere Informationen zu den verschiedenen Optionen zum Verschieben von Daten finden Sie unter Strategien für den Datentransfer zu Amazon Web Services. Sie können die Datei "postgresql.conf" bei Bedarf auf die gleiche Weise verschieben.

Stellen Sie sicher, dass die Sicherungsdatei auf dem EBS (Elastic Block Store)-Volume abgelegt wird.

Sobald die Sicherungsdatei auf die Zielinstanz von ArcGIS Enterprise on Amazon Web Services übertragen wurde, bereiten Sie das PostgreSQL-Datenbank-Cluster vor.

Vorbereiten des Ziel-PostgreSQL-Datenbank-Clusters

Sie müssen über eine Datenbank verfügen, in der Sie die Sicherungsdatei wiederherstellen können. Außerdem müssen sich alle Anmelderollen, die Eigentümer von Daten in der Quelldatenbank sind, im Zieldatenbank-Cluster befinden.

Konfigurationsdatei ablegen

Wenn Sie eine benutzerdefinierte postgresql.conf-Datei verwenden, erstellen Sie eine Kopie der Standard-postgresql.conf-Datei auf der Zielinstanz und legen Sie die benutzerdefinierte(n) Datei/Daten auf dem bereitgestellten Laufwerk ab.

Leere Datenbank erstellen

Die Datenbank, die Sie erstellen, muss den gleichen Namen haben wie die das Quelldatenbank-Cluster von PostgreSQL, für die Sicherungsdatei erstellt wurde. Datenbanknamen müssen innerhalb eines Datenbank-Clusters eindeutig sein. Wenn Sie also Datenbanken zwischen ArcGIS Enterprise on Amazon Web Services verschieben, muss eine der folgenden Situationen zutreffen:

  • Die Quelldatenbank kann keine Standarddatenbank (EGDB und GEODATA) sein.

    oder

  • Sie müssen die Standarddatenbank mit dem gleichen Namen aus dem Zieldatenbank-Cluster von PostgreSQL löschen, bevor Sie die übertragene Sicherungsdatei wiederherstellen können.
  1. Melden Sie sich bei der Zielinstanz von ArcGIS Enterprise on Amazon Web Services als Root-Benutzer an.
  2. Öffnen Sie eine Befehls-Shell und melden Sie sich bei "psql" als SDE-Benutzer an.
  3. Erstellen Sie eine Datenbank, in der Sie die Sicherungsdatei wiederherstellen können.

    Beachten Sie die folgenden Informationen:

    • Der Name, der Besitzer und die Codierung der Zieldatenbank müssen mit denen in der Quelldatenbank identisch sein.
    • Wenn Sie eine nicht standardmäßige Datenbankvorlage für die Quelldatenbank verwendet haben, beispielsweise eine PostGIS-Datenbankvorlage, verwenden Sie die Vorlage für die Zieldatenbank.
    • Sie können die neue Datenbank in einem vorhandenen Tablespace speichern oder einen neuen Tablespace speziell für diese Datenbank erstellen. Wenn Sie einen neuen Tablespace verwenden möchten, müssen Sie ihn erstellen, bevor Sie die Datenbank erstellen.

    CREATE DATABASE <dbname>
      WITH OWNER = sde
           TEMPLATE = template0
           ENCODING = '<encoding of db>'
           TABLESPACE = 
           LC_COLLATE = ''
           LC_CTYPE = ''
           CONNECTION LIMIT = -1;

Erstellen von Anmelde- und Gruppenrollen

Das Zieldatenbank-Cluster muss Anmelderollen für jeden Benutzer enthalten, der Daten in der Quelldatenbank besitzt.

Wenn Sie eine Datenbank von einer ArcGIS Enterprise on Amazon Web Services-Instanz in eine andere verschieben und die Standardanmelderollen verwenden, müssen Sie keine neuen Rollen im Zieldatenbank-Cluster erstellen. Wenn sich Daten in der Quelldatenbank jedoch im Besitz von nicht standardmäßigen Anmelderollen befinden, müssen Sie Anmelderollen mit den gleichen Namen im Zieldatenbank-Cluster von PostgreSQL erstellen. Analog dazu müssen Sie für den Fall, dass Sie Gruppenanmeldungen in der Zieldatenbank verwenden möchten, diese neu erstellen und für die Anmelderollen zulassen.

Weitere Informationen zum Erstellen von Gruppen- und Anmelderollen und zum Hinzufügen von Anmeldungen zu Gruppen finden Sie in der PostgreSQL-Dokumentation.

Datenbank wiederherstellen

Verwenden Sie die Anwendung "PostgreSQL pg_restore", um die Datenbank wiederherzustellen.

Vorsicht:

Sie müssen den Befehl "pg_restore" zweimal ausführen: einmal, um das öffentliche Schema wiederherzustellen, das die Systemtabelle "sde_spatial_references" enthält, und ein zweites Mal zum Wiederherstellen der restlichen Daten. Andernfalls werden keine räumlichen Daten wiederhergestellt.

  1. Stellen Sie eine Verbindung zur Zielinstanz von ArcGIS Enterprise on Amazon Web Services her (die Instanz, auf die Sie die Sicherungsdatei verschoben haben).
  2. Öffnen Sie eine Befehls-Shell und melden Sie sich bei "psql" als SDE-Benutzer an.
  3. Führen Sie den Befehl "pg_restore" über die Shell-Eingabeaufforderung aus, um das öffentliche Schema in der Datenbank wiederherzustellen.

    Der SDE-Benutzer muss Superuser in PostgreSQL sein, um den Befehl "pg_restore" ausführen zu können.

    pg_restore -U sde -n public -d spdb /data/spdbbu11012.dump
    Password:
  4. Führen Sie den Befehl "pg_restore" ein zweites Mal aus, um die gesamte Datenbank wiederherzustellen.
    pg_restore -U sde -d spdb /data/spdbbu11012.dump
    Password:

    Weitere Informationen zur Anwendung "pg_restore" finden Sie in der PostgreSQL-Dokumentation.

Nachdem Sie die Datenbank im Zieldatenbank-Cluster von PostgreSQL wiederhergestellt haben, überprüfen Sie, ob die erwarteten Schemas und Tabellen in der neuen Datenbank vorhanden sind. Fragen Sie dazu die PostgreSQL-Katalogansichten ab, in denen diese Informationen gespeichert sind. Sie können beispielsweise die Katalogansicht "pg_tables" abfragen, um alle Tabellen in der Datenbank sowie das Schema, in denen sie gespeichert sind, anzuzeigen.

Datenbankvariablen festlegen

Nun verwenden Sie die Variableninformationen für die benutzerdefinierte Datenbank, die Sie zuvor gesammelt haben, um die Variablen für die neue Datenbank festzulegen.

Mit den folgenden Schritten können Sie die Variable "search_path" hinzufügen und festlegen. Die gleichen grundlegenden Schritte werden zum Einstellen benutzerdefinierter Werte für andere Datenbankvariablen ausgeführt.

  1. Stellen Sie eine Verbindung zur neuen Datenbank als SDE-Benutzer über "psql" her.
  2. Legen Sie den Suchpfad für die Datenbank, in die das SDE-Schema eingefügt werden soll, über die "psql"-Eingabeaufforderung fest.

    SET search_path TO "$user",public,sde;

Verwandte Themen