ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Wiederherstellen einer Geodatabase in PostgreSQL

Verwenden Sie den Befehl "pg_restore", um eine Datenbank aus einer mit dem Befehl "pg_dump" erstellten Archivdatei wiederherzustellen. Testen Sie die Sicherungs- und Wiederherstellungsmodelle mit Testdatenbanken.

Bei der Wiederherstellung einer Geodatabase oder einer Datenbank mit installierter ST_Geometry müssen Sie Schemas in einer bestimmten Reihenfolge wiederherstellen: Zuerst das öffentliche Schema, dann das Schema "sde" und schließlich die verbleibenden Schemas.

Allgemeine Anweisungen für die Wiederherstellung, wie Syntax-Optionen, finden Sie in der PostgreSQL-Dokumentation. Wenn Sie PostGIS installiert haben und den Speichertyp "Geometry" oder "Geography" verwenden, lesen Sie die PostGIS-Dokumentation zur Erstellung von Sicherungskopien und zur Datenbankwiederherstellung. Dieser Vorgang kann je nach verwendeter PostGIS-Version variieren.

  1. Datenbanknamen müssen in der PostgreSQL-Instanz eindeutig sein. Daher müssen Sie die vorhandene Datenbank aufgeben, wenn Sie eine Wiederherstellung im selben Datenbank-Cluster durchführen.
    dropdb –U sde mypgdb
    
  2. Wenn Sie eine Wiederherstellung in einem neuen Datenbank-Cluster durchführen, melden Sie sich bei psql an, erstellen Sie die SDE-Anmelderolle neu, und weisen Sie ihr eine Administratorberechtigung zu.
    CREATE ROLE sde LOGIN 
      ENCRYPTED PASSWORD '0shallpass'
      SUPERUSER INHERIT;
    
  3. Wenn Sie eine Wiederherstellung in einem neuen Datenbank-Cluster durchführen, erstellen Sie die Anmelderollen für alle Datenbankbesitzer neu. Sie können auch Editor- und schreibgeschützte Anmelderollen neu erstellen, obwohl dies zum Wiederherstellen der Datenbank nicht erforderlich ist.

    Mit dem folgenden Beispielskript werden Anmelderollen und -gruppen für Datenbesitzer, Editoren und Leser erstellt und die Anmelderollen den entsprechenden Gruppen hinzugefügt.

    --Re-create dataowners group and login roles. CREATE ROLE dataowners  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    CREATE ROLE owner1 LOGIN  ENCRYPTED PASSWORD 'pw.4.owner1'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT dataowners TO owner1;
    CREATE ROLE owner2 LOGIN  ENCRYPTED PASSWORD 'pw.4.owner2'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT dataowners TO owner2;
    --Re-create editors group and login roles. CREATE ROLE editors  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    CREATE ROLE editor1 LOGIN  ENCRYPTED PASSWORD 'pw.4editor1'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT editors TO owner1;
    CREATE ROLE owner2 LOGIN  ENCRYPTED PASSWORD 'pw.4editor2'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT editors TO editor2;
    --Re-create readers group and login roles. CREATE ROLE readers  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    CREATE ROLE reader1 LOGIN  ENCRYPTED PASSWORD 'pw.4reader1'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT readers TO reader1;
    CREATE ROLE owner2 LOGIN  ENCRYPTED PASSWORD 'pw.4reader2'  NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
    GRANT readers TO reader2;
    
  4. Wenn die Wiederherstellung in einem neuen Datenbank-Cluster erfolgt, achten Sie darauf, die st_geometry-Bibliothek im PostgreSQL-Speicherort "lib" abzulegen. Weitere Informationen zum Speichern der st_geometry-Bibliothek finden Sie unter Erstellen einer Geodatabase in PostgreSQL unter Linux oder Erstellen einer Geodatabase in PostgreSQL unter Windows.
  5. Erstellen Sie die Datenbank neu. Sie können dazu die createdb-Anweisung in der Befehlszeile oder eine psql-Anwendung verwenden.
    Hinweis:

    Stellen Sie sicher, dass die neue Datenbank die gleichen Eigenschaften aufweist wie die Datenbank, die Sie wiederherstellen, einschließlich Name, Codierung und Besitzer.

    Im folgenden Beispiel wird mit dem createdb-Befehlszeilenwerkzeug eine Datenbank namens "mypgdb" mit UTF8-Codierung erstellt, die im Besitz der SDE-Anmelderolle ist und sich im Tablespace "tblspgdb" befindet:

    createdb –U sde –E UTF8 –D tblspgdb -O sde mypgdb
    
  6. Melden Sie sich erneut bei psql an, und erstellen Sie in der neuen Datenbank ein SDE-Schema, das im Besitz der SDE-Anmelderolle ist. Gewähren Sie allen Anmelderollen oder -gruppen, die auf die Geodatabase zugreifen, Zugriff auf das SDE-Schema.
    CREATE SCHEMA sde
      AUTHORIZATION sde;
    GRANT USAGE ON SCHEMA sde TO dataowners;
    GRANT USAGE ON SCHEMA sde TO editors;
    GRANT USAGE ON SCHEMA sde TO readers;
    
  7. Ändern Sie den Suchpfad für die neue Datenbank, um das Schema "sde" einzufügen.
    ALTER DATABASE mypgdb
      SET SEARCH_PATH="$user",sde,public;
    
  8. Stellen Sie in der Befehlszeile das öffentliche Schema und die Daten mit dem Befehl "pg_restore" wieder her. Führen Sie den Befehl als Anmeldung mit Superuser-Berechtigungen, wie beispielsweise der postgres- oder sde-Benutzer, aus.
    Vorsicht:

    Sie müssen zuerst das öffentliche Schema und dessen Inhalt wiederherstellen. Andernfalls werden Ihre räumlichen Daten nicht wiederhergestellt. Erstellen Sie im zweiten Schritt das SDE-Schema. Andernfalls werden für die Feature-Classes keine räumlichen Indizes neu erstellt.

    Wenn Sie beispielsweise das öffentliche Schema einer Datenbanksicherungsdatei mit dem Namen "mypgdb1031.dump" in der Datenbank "mypgdb" wiederherstellen möchten, führen Sie den folgenden Befehl aus:

    pg_restore -U sde -d mypgdb -n public mypgdb1031.dump
    
  9. Stellen Sie als nächstes den Inhalt des SDE-Schemas wieder her.
    pg_restore -U sde -d mypgdb -n sde mypgdb1031.dump
    
  10. Stellen Sie abschließend die verbleibenden Schemas und Daten wieder her.
    pg_restore –U sde –d mypgdb mypgdb1031.dump
    
  11. Nachdem die Datenbank wiederhergestellt wurde, testen Sie die Datenbank, indem Sie über ArcGIS Desktop eine Verbindung zu ihr herstellen und die Daten überprüfen.

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2021 Esri. | Datenschutz | Rechtliches