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 for 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

Hilfe

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Daten verwalten
  • Werkzeuge
  • Mehr ...

Verwalten von Verbindungen in PostgreSQL

Mit der Standard- oder Advanced-Lizenz verfügbar.

  • Identifizieren und Entfernen von Verbindungen über ArcGIS for Desktop
  • Identifizieren und Entfernen von Verbindungen mit ArcPy

Als Geodatabase-Administrator müssen Sie gelegentlich überprüfen, wer mit der Geodatabase verbunden ist und welche Verbindungen Ressourcen sperren. Sie müssen möglicherweise sogar bestimmte Verbindungen entfernen. Ein Editor hat möglicherweise eine Bearbeitungssitzung geöffnet gelassen, wodurch die Daten in der Bearbeitungssitzung gesperrt und andere Editoren nicht darauf zugreifen können. Wenn die Anzahl der Verbindungen, die mit einer Geodatabase hergestellt werden können, beschränkt ist, müssen Sie einen Benutzer, der sich nicht abgemeldet hat, möglicherweise trennen, um eine Verbindung freizugeben. Sie können jedoch auch alle Benutzer abmelden, um ein Patch auf die Datenbank anzuwenden, die Datenbank wiederherzustellen oder die Geodatabase zu komprimieren.

Wenn die Benutzer nicht anwesend sind, um sich selbst abzumelden, können Sie als SDE-Benutzer eine Verbindung mit der Geodatabase über ArcGIS for Desktop oder mit einer ArcPy-Funktion herstellen und die Verbindungen der Benutzer trennen. Der Benutzer "sde" muss über Superuser-Zugriff verfügen, um die Verbindungen anderer Benutzer aus der Geodatabase zu entfernen.

Vorsicht:

Gehen Sie beim Trennen von Benutzern mit Bedacht vor. Esri empfiehlt, aktive Sitzungen nicht zu trennen, besonders, wenn der verbundene Benutzer gerade etwas bearbeitet. Sie sollten Benutzer nur dann trennen, wenn eine Sitzung geöffnet gelassen wurde, selbst wenn sie (z. B. am Wochenende) nicht verwendet wird, wenn eine Sitzung verwaist ist und ein Objekt sperrt oder wenn eine Deadlock-Situation auftritt.

Ermitteln Sie zunächst, wer mit der Geodatabase verbunden ist, und entfernen Sie Verbindungen nach Bedarf. Sie können eine Verbindung mit der Geodatabase in ArcGIS for Desktop mithilfe der ArcPy-Funktion DisconnectUser herstellen.

Identifizieren und Entfernen von Verbindungen über ArcGIS for Desktop

Sie können eine Verbindung mit der Geodatabase als SDE-Benutzer in ArcGIS for Desktop herstellen, um Verbindungen im Dialogfeld Geodatabase-Verwaltung anzuzeigen.

  1. Starten Sie ArcMap oder ArcCatalog.
  2. Stellen Sie eine Verbindung mit der Geodatabase als SDE-Benutzer her.
  3. Klicken Sie im Kataloginhaltsverzeichnis mit der rechten Maustaste auf die Datenbankverbindung, zeigen Sie auf Verwaltung, und klicken Sie auf Geodatabase verwalten.
  4. Klicken Sie auf die Registerkarte Verbindungen.

    Eine Liste aller Benutzersitzungen, die gerade mit der Geodatabase verbunden sind, wird angezeigt. Ihre Sitzung wird in kursivem Text angezeigt.

  5. Wenden Sie sich an einzelne Benutzer, um sie zu bitten, ihre Sitzungen zu schließen. Falls Sie sie nicht erreichen können und sie dennoch von der Geodatabase trennen müssen, fahren Sie mit dem nächsten Schritt fort.
  6. Klicken Sie mit der rechten Maustaste auf die entsprechende Benutzersitzung, die Sie aus der Geodatabase entfernen möchten, und klicken Sie auf Trennen.

    Die Benutzersitzung wird sofort aus der Geodatabase gelöscht.

Identifizieren und Entfernen von Verbindungen mit ArcPy

Sie können Python-Funktionen ausführen, um eine Geodatabase-Verbindung zu definieren, die Benutzer aufzulisten, die aktuell mit der Geodatabase verbunden sind, und um eine Verbindung aus der Geodatabase zu entfernen.

  1. Erstellen Sie eine Datenbankverbindungsdatei, indem Sie die Funktion CreateDatabaseConnection_management in einem Python-Fenster ausführen. Speichern Sie den Benutzernamen und das Kennwort mit der Datei.

    In diesem Beispiel wird im temporären Ordner eine Verbindungsdatei (pgdb.sde) erstellt. Die Verbindung erfolgt zur Geodatabase "pg1" auf dem Datenbank-Cluster "mydbc" mit der Anmeldung als Benutzer "sde".

    import arcpy
    arcpy.CreateDatabaseConnection_management ("c:\\temp", "pgdb.sde", "POSTGRESQL", "mydbc", "DATABASE_AUTH", "sde", "mysdepwd", "SAVE_USERNAME", "pg1")
    

  2. Führen Sie die Funktion ListUsers aus, um eine Liste der aktuellen Verbindungen mit der Geodatabase "pg1" abzurufen.

    Übergeben Sie die Verbindungsdatei, die Sie im vorherigen Schritt erstellt haben.

    ##No need to import arcpy if you are running functions in the same Python window.
    import arcpy
    
    arcpy.ListUsers("c:\\temp\pgdb.sde")
    

    Es wird eine Liste der Benutzerverbindungen zurückgegeben.

    [user(ClientName=u'PC4', ConnectionTime=datetime.datetime(2014, 2, 18, 8, 30, 19),
     ID=18, IsDirecConnection=True, Name=u'publisher1')]
    [user(ClientName=u'PC25', ConnectionTime=datetime.datetime(2014, 2, 21, 14, 10, 43),
     ID=33, IsDirecConnection=True, Name=u'editor2')]
    [user(ClientName=u'PC11', ConnectionTime=datetime.datetime(2014, 2, 22, 9, 18, 26),
     ID=39, IsDirecConnection=True, Name=u'reader5')]
    [user(ClientName=u'PCA2', ConnectionTime=datetime.datetime(2014, 2, 22, 11, 21, 2),
     ID=41, IsDirecConnection=True, Name=u'sde')]

  3. Wenden Sie sich an einzelne Benutzer, um sie zu bitten, ihre Sitzungen zu schließen. Falls Sie sie nicht erreichen können und sie dennoch von der Geodatabase trennen müssen, fahren Sie mit dem nächsten Schritt fort.
  4. Ermitteln Sie anhand der mit der Funktion ListUsers abgerufenen Informationen, welche Verbindung entfernt werden muss, indem Sie die Funktion DisconnectUser verwenden.

    Geben Sie die ID der zu entfernenden Verbindung an. Hier wird die Verbindung mit der ID 33 entfernt:

    ##No need to import arcpy if you are running functions in the same Python window.
    import arcpy
    
    arcpy.DisconnectUser("c:\\temp\pgdb.sde",33)
    

    Die Benutzersitzung wird sofort aus der Geodatabase gelöscht.

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS Plattform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

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