Mehrere Geodatabases in Oracle
In einem Oracle-Datenbankmanagementsystem (DBMS) bestehen zwei Möglichkeiten zum Speichern mehrerer Geodatabases: Sie können separate Oracle-Instanzen installieren und jeweils eine Geodatabase in jeder Instanz erstellen oder eine Master-Geodatabase in einer Oracle-Instanz erstellen und in dieser Instanz abhängige Geodatabases in separaten Benutzerschemas erstellen.
Für die erste Möglichkeit müssen Sie mehrere Oracle-Instanzen installieren. Wenn Sie für die Verbindung zu der Geodatabase einen ArcSDE-Dienst verwenden, benötigen Sie einen Dienst für jede Geodatabase. Die einzelnen Geodatabases werden unabhängig voneinander gewartet und aktualisiert. Ebenso können Sie die einzelnen Geodatabases unabhängig voneinander deinstallieren und löschen.
Für die zweite Möglichkeit benötigen Sie eine Installation der Oracle-Instanz, eine Installation von ArcSDE und einen ArcSDE-Dienst für die Verbindung. In der Datenbank müssen mehrere Benutzer konfiguriert sein, von denen jeder über ArcSDE-Administratorrechte zum Installieren, Verwalten und Aktualisieren der in seinem Schema gespeicherten Geodatabase verfügt. Die einzelnen Geodatabases werden unabhängig voneinander gewartet und aktualisiert. Sie können einzelne Geodatabases in einem Benutzerschema löschen, nachdem Sie alle registrierten Daten entfernt haben, zum Löschen der Master-Geodatabase müssen Sie jedoch zuvor alle in den Benutzerschemas gespeicherten Geodatabases löschen.
Die folgenden Abschnitte enthalten Informationen zu den beiden Möglichkeiten.
Mehrere Geodatabases in separaten Oracle-Datenbanken
Sie können mehrere Geodatabases in separaten Oracle-Datenbanken erstellen, indem Sie jede Oracle-Datenbank genau so einrichten und installieren wie beim Einrichten einer einzelnen Datenbank.
Wenn Sie separat eine direkte Verbindung zu jeder Geodatabase herstellen, müssen Sie neben der allgemeinen Direktverbindungskonfiguration keine weiteren Konfigurationsschritte durchführen. Wenn Sie über die Datenbankauthentifizierung eine Verbindung zur Datenbank herstellen, müssen Sie den Netzwerk-Dienstnamen an das Ende des Datenbank-Kennwortes anhängen, um anzugeben, mit welcher Datenbank Sie eine Verbindung herstellen möchten. Bei dem Netzwerk-Dienstnamen "benedict2" würden Sie das Kennwort folgendermaßen eingeben:
mypassword@benedict2
Wenn Sie eine Direktverbindung zu einer Remote-Oracle-Datenbank herstellen und die Betriebssystemauthentifizierung verwenden, müssen Sie in ArcCatalog die Variable LOCAL und deren Wert an die Direktverbindungssyntax im Feld "Dienst" bzw. die Serveroption (–s) in der Befehlszeile anhängen. Um beispielsweise die Betriebssystemauthentifizierung für den Netzwerkdienst "benedict2" zu verwenden, müssen Sie die Verbindungszeichenfolge gefolgt von einem Schrägstrich und "LOCAL=benedict2" wie hier dargestellt eingeben:
sde:oracl10g:/;LOCAL=benedict2
Wenn Sie eine Direktverbindung zu einer lokalen Oracle-Datenbank herstellen und die Betriebssystemauthentifizierung verwenden, müssen Sie die Variable ORACLE_SID und deren Wert stattdessen an die Direktverbindungssyntax anhängen.
sde:oracle10g:/;ORACLE_SID=benedict2
Ausführliche Anweisungen zur Verbindung von der Desktop-Anwendung finden Sie unter Herstellen einer direkten Verbindung zwischen ArcGIS Desktop und einer Geodatabase in Oracle.
Wenn Sie einen ArcSDE-Dienst verwenden, muss jede Verbindung über einen eigenen ArcSDE-Dienstnamen und eine Portnummer verfügen. Aus diesem Grund müssen Sie der Dienstedatei für den neuen Dienst und die Portnummer einen neuen Eintrag hinzufügen. Sie müssen auch für jede zusätzlich erstellte Geodatabase eine Kopie der Datei "dbinit.sde" erstellen.
Anweisungen zum Erstellen mehrerer ArcSDE-Dienstinstanzen finden Sie unter Verwenden mehrerer ArcSDE-Dienste auf einem Windows-Server und Verwenden mehrerer ArcSDE-Dienste auf einem Linux- oder UNIX-Server.
Mehrere Geodatabases in einer Oracle-Datenbank
Sie können mehrere Geodatabases in einer Oracle-Datenbank erstellen. Hierfür erstellen Sie eine Geodatabase in einem anderen Benutzerschema als SDE. Aus diesem Grund werden diese Geodatabases als Benutzerschema-Geodatabases bezeichnet. Diese Geodatabases enthalten ihre eigenen ArcSDE- und Geodatabase-Systemtabellen.
Es kann nur eine Geodatabase pro Benutzerschema vorhanden sein. Geodatabases im Benutzerschema werden gleichzeitig mit einer Master-Geodatabase ausgeführt, die im SDE-Schema gespeichert ist. Da die Master-Geodatabase im Schema des SDE-Benutzers gespeichert ist, wird diese als Master-SDE-Geodatabase bezeichnet.
Die Geodatabase im SDE-Schema ist immer die Master-Geodatabase und enthält eine Tabelle (SDE.INSTANCES), die einen Überblick über alle anderen Geodatabases in der Oracle-Datenbank bietet. Das SDE-Schema enthält auch den Typ ST_Geometry, seine Subtypes und Funktionen sowie die verwendeten Systemtabellen, z. B. ST_SPATIAL_REFERENCES.
Sowohl die SDE-Master-Geodatabase als auch die Benutzerschema-Geodatabases werden in nur einer Oracle-Datenbank erstellt. Der Zugriff ist durch einen einzelnen ArcSDE-Dienst möglich.
Situationen, in denen Sie unter Umständen mehrere Geodatabases in der gleichen Oracle-Datenbank benötigen:
- Wenn kleinere Gruppen innerhalb eines Unternehmens, wie Abteilungen oder Projektgruppen, unabhängig voneinander arbeiten, möchten diese unter Umständen auf eigene Daten zugreifen können. In diesem Fall könnten Sie eine Geodatabase für jede Gruppe erstellen.
- Wenn Sie Ihre Entwicklungsumgebung von Ihrer Produktionsumgebung trennen müssen, können Sie eine Geodatabase in einem Benutzerschema zum Testen in der Entwicklungsumgebung verwenden.
- Erstellen Sie separate Benutzerschema-Geodatabases, damit Sie jede Geodatabase für den jeweiligen Anwendungszweck optimieren können.
- Sie können sensible Informationen schützen, indem Sie sie in einer separaten Benutzerschema-Geodatabase bereitstellen, auf die nur bestimmte Benutzer zugreifen können.
Dies wäre zum Beispiel der Fall bei einer Militärdatenbank mit vertraulichen Daten, die in einer eigenen Geodatabase geschützt sein sollte, damit Besitzer anderer Instanzen die Daten nicht sehen können.
Regeln zum Verwenden mehrerer Geodatabases in einer Oracle-Datenbank:
- Ein Benutzer kann nur eine Geodatabase besitzen.
- Nur eine Geodatabase kann auf ein Dataset verweisen, das bei ArcSDE registriert wurde.
- Der Benutzer, der die Geodatabase erstellt hat, ist zugleich ihr Besitzer. Dieser Benutzer ist der ArcSDE-Administrator für diese Geodatabase.