Entfernen einer ArcSDE-Dienstverbindung aus der Geodatabase

Manchmal kann eine Verbindung hängen, sodass ein Datensatz in einer oder mehreren Geodatabase-Repository-Tabellen verwaist ist. Wenn das passiert, müssen Sie die Verbindung möglicherweise zwangsweise beenden. Verwenden Sie dazu den administrativen Befehl "sdemon".

Wenn Sie den Befehl "sdemon" mit dem Vorgang "kill" verwenden, wird die Verbindung zur Geodatabase entfernt und alle Datensätze in PROCESS_INFORMATION und in Sperrtabellen bereinigt.

Der Befehl "sdemon" mit dem Vorgang "kill" hat folgende Syntax:

sdemon –o kill –t {all | <pid>} [–D <database_name>] [–s <server_name>]
-i <service> -u <user_name> -p <password>

Die Option "–t" gibt an, ob alle Verbindungen aus der Geodatabase (all) oder nur eine bestimmte Verbindung (<pid>) entfernt werden sollen. In den meisten Fällen geben Sie die Prozess-ID (pid) für eine bestimmte Verbindung ein, die im Geodatabase-Repository beibehalten wurde.

Wenn Sie eine Verbindung mit einer Nicht-Oracle-Datenbank herstellen, geben Sie den Namen der Datenbank mit der Option "-D" an. (Bei einer Verbindung zu Oracle benötigen Sie die Option "-D" nicht.)

Wenn Sie eine Verbindung mit einem Remote-Server herstellen möchten, geben Sie die Option "–s" mit dem Namen des Servers an, auf dem sich die Datenbank befindet.

Geben Sie die Portnummer für den ArcSDE-Dienst an.

Verwenden Sie die Optionen "–u" und "–p", um einen Benutzernamen und ein Kennwort für den ArcSDE-Administratorbenutzer anzugeben.

Schritte:
  1. Öffnen Sie auf einem Computer, auf dem Sie Zugriff auf die administrativen Befehle in ArcSDE haben, eine MS-DOS- (Windows) oder eine Shell-Befehlseingabeaufforderung (UNIX oder Linux).
  2. Sammeln Sie Informationen über verbundene Benutzer, indem Sie entweder die Funktion "SE_connection_get_instance_users" verwenden, die Tabelle PROCESS_INFORMATION abfragen oder den Befehl "sdemon" mit dem Vorgang "info" oder der Option "users_long" verwenden. Eine Anleitung zur Verwendung des Befehls "sdemon" zum Abrufen einer Liste von Verbindungen finden Sie unter Anzeigen von verbundenen Sitzungen.
  3. Identifizieren Sie in den zurückgegeben Informationen die SDE-ID der Verbindung, die Sie entfernen möchten. Bei der Option "users" für "sdemon –o info" ist dies "S–ID". Bei der Option "users_long" ist dies die Server-Task-ID. Für die Funktion "SE_connection_get_instance_users" ist dies "svr_id". Wenn Sie die Tabelle PROCESS_INFORMATION abfragen, verwenden Sie "sde_id".
  4. Geben Sie den Befehl "sdemon" mit dem Vorgang "kill" und der entsprechenden, weiter oben in diesem Thema beschriebenen Option ein. Verwenden Sie die Option "–t", um den Wert von SDE ID für die zu entfernende Verbindung anzugeben.
TippTipp:

Weitere Informationen zum Befehl "sdemon" finden Sie in der ArcSDE Administration Command Reference, die zusammen mit der ArcSDE-Komponente von ArcGIS Server Enterprise bereitgestellt wird.

Verwandte Themen


7/10/2012