Benutzerschema-Geodatabase-Management
Die Verwaltung von Geodatabases, die nicht im Schema des Benutzers "sde" gespeichert sind, unterscheidet sich von der Verwaltung der sde-Master-Geodatabase, von der sie abhängig sind. Dieses Thema enthält einige Verwaltungs-Tasks, die sich von denen für Master-Geodatabases unterscheiden.
Der Besitzer der Geodatabase ist der ArcSDE-Administrator. Anders ausgedrückt, entspricht der Benutzer, der Eigentümer des Schemas ist, in dem die Geodatabase gespeichert wird, dem Benutzer "sde" in der sde-Master-Geodatabase und dies ist der Benutzer, der Verwaltungs-Tasks in der Benutzerschema-Geodatabase ausführt.
Weitere Benutzerschema-Geodatabase-Informationen finden Sie unter Verbindungen mit Benutzerschema-Geodatabases und Löschen einer Geodatabase aus einem Benutzerschema.
Starten und Beenden einer Geodatabase in einem Benutzerschema
Geodatabases, die in anderen Schemas als dem SDE-Schema gespeichert werden, sind von der Master-Geodatabase abhängig. Wenn Sie die Master-Geodatabase starten oder beenden, werden automatisch auch alle verknüpften Geodatabases gestartet oder beendet. Wenn Sie versuchen, eine Geodatabase, die in einem Benutzerschema gespeichert ist, separat zu starten, wird ein Fehler der folgenden Art ausgegeben:
init_DB DB_instance_open_as_dba: -93 DBMS error code: 1017 ORA-01017: invalid username/password; logon denied
Auflisten der Geodatabases auf einem Server
Sie können herausfinden, welche Geodatabases auf einem Server ausgeführt werden, indem Sie die Option "–I" im Befehl "sdemon –o info" verwenden. Mit dieser Option werden Information zu den verschiedenen Geodatabases auf dem Server zurückgegeben.
sdemon –o info –I instances Instance Created Id SDE Thu Oct 28 16:30:20 2004 0 MAP Mon Feb 27 11:18:04 2006 1
Sie können ferner die Systemtabelle INSTANCES mit SQL abfragen, um Informationen über Benutzerschema-Geodatabases abzurufen.
Weitere Informationen zum Befehl "sdemon" finden Sie in der "ArcSDE Administration Command Reference", die mit ArcSDE bereitgestellt wird.
Erstellen gespeicherter Prozeduren für Geodatabases, die in einem Benutzerschema gespeichert sind
Zu jeder Geodatabase gehören bestimmte Pakete gespeicherter Prozeduren, die beim Erstellen der Geodatabase automatisch im ArcSDE-Administrator-Schema erstellt werden.
Darüber hinaus können Sie die einzelnen Pakete in der Geodatabase mit SQL*Plus erstellen, indem Sie den Schemanamen angeben. Um z. B. das Paket "dbtune_util" im Thor-Benutzerschema zu erstellen, geben Sie folgenden Befehl bei der SQL-Eingabeaufforderung an:
@dbtune_util.sps THOR
Laden von Daten in eine Benutzerschema-Geodatabase
Sie laden Daten in Geodatabases, die sich in einem anderen Schema als dem Schema des Benutzers "SDE" befinden, auf die gleiche Weise wie Sie Daten in die SDE-Master-Geodatabase laden: entweder mit ArcGIS Desktop (empfohlene Methode) oder mit ArcSDE-Befehlen.
Wenn Sie in der gleichen Oracle-Datenbank als ein Benutzer in ArcGIS Desktop mit zwei verschiedenen Geodatabases verbunden sind, können Sie keine Datasets aus einer der Geodatabases kopieren und in die andere einfügen. Der Grund hierfür ist, dass das Dataset keinen eindeutigen, vollständig qualifizierten Namen aufweist, da es im gleichen Benutzerschema gespeichert ist.
Sie können eine Tabelle, die den gleichen Namen wie eine Tabelle in einer anderen Geodatabase hat, problemlos in eine Geodatabase laden, sofern die Tabellen verschiedenen Schemas zugeordnet sind.
Registrieren von Tabellen und Layern
Benutzer, die Besitzer von Geodatabases sind, können Tabellen mit SQL- oder ArcSDE-Befehlen in anderen Geodatabases erstellen. Eine Tabelle kann jedoch nur in einer Geodatabase registriert werden.
Wenn die Tabelle bereits in einem anderen Schema registriert ist, wird der Fehler SE_TABLE_REGISTERED_OUTSIDE_SCHEMA zurückgegeben.
Das folgende Beispiel zeigt das Registrieren der Tabelle "mytable", die mit SQL erstellt wurde, bei ArcSDE:
sdetable –o register –t mytable –i 2299:schemaname –u user –p passwd
Dieses Beispiel zeigt das Erstellen eines Layers (mylayer) mit dem Befehl "sdelayer".
sdelayer –o create –l mylayer,shape –i port:schemaname –u user -p passwd
Weitere Informationen zur Verwendung der Befehle "sdetable" und "sdelayer" finden Sie in der "ArcSDE Administration Command Reference", die im Lieferumfang der ArcGIS Server Enterprise-Installationsmedien enthalten ist.
Erstellen einer Sicherung von Benutzer-Geodatabases
Wenn alle Tabellen in der Schema-Geodatabase im Besitz des Schemabesitzers sind (d. h., wenn keine anderen Benutzerdaten in der Geodatabase angelegt werden), der Geodatabase-Besitzer keine Daten in einer anderen Geodatabase besitzt und Sie nicht den Speichertyp "ST_Geometry" verwenden, können Sie eine Sicherung des Schemas des Geodatabase-Besitzers erstellen.
In den meisten Fällen wird empfohlen, dass Sie eine vollständige Oracle-Systemsicherung durchführen. Wenn Benutzer Daten in mehreren Geodatabases in der gleichen Oracle-Datenbank besitzen oder Sie den Speichertyp "ST_Geometry" verwenden (der ab ArcGIS 9.3 der Standardspeichertyp für ArcSDE-Geodatabases ist), ist eine vollständige Oracle-Systemsicherung erforderlich. Das liegt daran, dass die Geodatabase im Schema des Benutzers auf Informationen in anderen Schemas in der Datenbank zurückgreift. Daher reicht es nicht aus, nur eine Sicherung des Schemas zu erstellen, das die Geodatabase enthält. Informationen zum Erstellen von Datenbanksicherungen finden Sie in der Oracle-Dokumentation.