Herstellen einer Verbindung mit Oracle von ArcGIS

Um eine Verbindung mit Oracle über Oracle-Clients auf ArcGIS-Client-Computern herzustellen, legen Sie Umgebungsvariablen fest, die auf den Oracle-Client verweisen, und erstellen Sie über ArcGIS eine Datenbankverbindung.

Um ArcGIS Server-Web-Services zu veröffentlichen, die auf die Daten in Ihrer Oracle-Datenbank verweisen, registrieren Sie die Datenbankverbindungsdatei bei den ArcGIS Server-Sites.

Installieren der Oracle-Client-Software

Die Oracle-Client-Software muss auf allen ArcGIS-Client-Computern installiert werden, die eine Verbindung mit der Datenbank herstellen. Wenn Sie nicht berechtigt sind, Software auf den Computern zu installieren, auf denen ArcGIS-Clients ausgeführt werden, muss der Oracle-Client von der IT-Abteilung installiert und konfiguriert werden.

Installieren Sie eine Version der Oracle-Client-Anwendung, die mit der Version der Datenbank kompatibel ist, mit der Sie eine Verbindung herstellen möchten.

Sie können den Oracle Instant, Runtime oder Administrator Client bei Oracle anfordern und entsprechend den Anweisungen in der Oracle-Dokumentation auf dem Client-Computer installieren.

Anhand der folgenden Tabelle kann die geeignete Oracle-Clientkonfiguration ermittelt werden:

InstallationskombinationenZu verwendende Konfiguration

ArcGIS Server (Site mit einem Computer) und Oracle werden auf demselben Server installiert, ArcGIS Pro wird auf unterschiedlichen Computern installiert.

Installieren Sie einen 64-Bit-Oracle-Client auf allen ArcGIS Pro-Computern, und stellen Sie die PATH-Variable auf das Startverzeichnis des Oracle-Clients ein.

Sie müssen keinen Oracle-Client auf dem Server installieren, da die zu verbindenden Dateien mit dem Oracle-Datenbankmanagementsystem installiert werden. Die Systemvariable LD_LIBRARY_PATH (Linux) oder PATH (Microsoft Windows) muss auf das Startverzeichnis von Oracle festgelegt sein.

Wenn Sie einen TNS-Namen für den Oracle-Client festlegen, müssen Sie auf dem ArcGIS Server- und dem ArcGIS Pro-Computer denselben Namen verwenden.

ArcGIS Server wird auf mindestens einem Computer installiert, der vom DBMS getrennt ist. ArcGIS Pro wird auf Computern installiert, die sowohl von Oracle als auch von ArcGIS Server getrennt sind.

Installieren Sie einen 64-Bit-Oracle-Client auf allen ArcGIS Pro-Computern, und stellen Sie die PATH-Variable auf das Startverzeichnis des Oracle-Clients ein.

Installieren Sie den 64-Bit-Client für Oracle auf allen ArcGIS Server-Computern, und stellen Sie sicher, dass die Systemvariable "PATH" (Windows) bzw. "LD_LIBRARY_PATH" (Linux) auf das Startverzeichnis des Oracle-Clients eingestellt ist.

Wenn Sie einen TNS-Namen für den Oracle-Client festlegen, müssen Sie auf dem ArcGIS Server- und dem ArcGIS Pro-Computer denselben Namen verwenden.

ArcGIS Server und ArcGIS Pro werden auf demselben Server und Oracle wird auf einem anderen Server installiert.

Installieren Sie den 64-Bit-Oracle-Client auf allen ArcGIS Server-Computern. Sowohl ArcGIS Server als auch ArcGIS Pro verwenden diesen Client.

Legen Sie für die Systemvariable "PATH" das Startverzeichnis des Oracle-Clients fest.

ArcGIS Server, ArcGIS Pro und Oracle werden auf einem Computer installiert.

ArcGIS Server und ArcGIS Pro verwenden die mit dem Oracle-Datenbankmanagementsystem installierten 64-Bit-Client-Dateien, um die Verbindung herzustellen.

Stellen Sie die PATH-Variable auf das Startverzeichnis des Oracle-Clients ein.

Wenn die ArcGIS Server-Site zusätzliche Server umfasst, installieren Sie den 64-Bit-Oracle-Client auf jedem Server der Site, und stellen Sie die PATH-Variable auf das Startverzeichnis des Oracle-Clients ein.

Herstellen einer Verbindung von ArcGIS Pro

Legen Sie nach der Installation des Oracle-Clients auf dem ArcGIS Pro-Computer für die PATH-Umgebungsvariable einen Speicherort auf dem Oracle-Client fest, und erstellen Sie eine Datenbankverbindung.

Festlegen der PATH-Variable

Legen Sie für die PATH-Umgebungsvariable auf dem ArcGIS Pro-Computer den Speicherort der Oracle-Client-Installation fest. Anweisungen zum Festlegen der PATH-Umgebungsvariable finden Sie in der Microsoft Windows-Dokumentation.

Wenn ArcGIS Pro auf dem Computer ausgeführt wurde, bevor Sie die PATH-Variable festgelegt haben, starten Sie es neu, damit die neue Einstellung wirksam wird.

Verbinden mit der Datenbank

Fügen Sie über das Dialogfeld Datenbankverbindung oder das Geoverarbeitungswerkzeug Datenbankverbindung erstellen eine Datenbankverbindung hinzu.

In den folgenden Schritten wird die Verwendung des Dialogfeldes Datenbankverbindung zur Herstellung einer Verbindung mit Oracle beschrieben.

  1. Öffnen Sie den Bereich Katalog in ArcGIS Pro.
  2. Klicken Sie mit der rechten Maustaste auf Datenbanken, und klicken Sie dann auf Neue Datenbankverbindung.
  3. Wählen Sie aus der Dropdown-Liste Datenbankplattform den Eintrag Oracle aus.
  4. Geben Sie entweder den Oracle TNS-Namen in das Textfeld Instanz ein, oder stellen Sie eine der folgenden Oracle Easy Connect-Zeichenfolgen bereit:
    • Der Name des Oracle-Servers/Oracle-Dienstname oder ID

      Wenn beispielsweise Oracle auf "myserver" installiert ist und der Oracle-Dienstname "myosvc" lautet, geben Sie Folgendes ein:

      myserver/myosvc

    • Der Name des Oracle-Servers: Oracle-Portnummer/Oracle-Dienstname oder ID

      In diesem Beispiel ist Oracle auf "myserver" installiert und überwacht Port 60000. Der Oracle-Service-Name lautet "myoservice".

      myserver:60000/myoservice

    • Die URL des Oracle-Servers.

      Die URL für dieselbe Instanz im letzten Beispiel lautet dann folgendermaßen:

      //myserver:60000/myoservice

    • Der Name des Oracle-Servers (kann verwendet werden, wenn der Oracle-Listener auf dem Server so konfiguriert ist, dass er auf eine Standardinstanz verweist).
    • IP-Adresse des Oracle-Servers/Oracle-Dienstname oder ID

      Wenn beispielsweise die Adresse des Servers 10:10:10:10 ist und der Oracle-Servicename "orasvc" lautet, geben Sie 10:10:10:10/orasvc ein.

      Setzen Sie IPv6-Adressen in Klammern, z. B. [4000:ab5:0:0:f666:d191:77f5:e2bd]/orasvc.

    • IP-Adresse des Oracle-Servers: Oracle-Portnummer/Oracle-Dienstname oder ID

      In diesem Beispiel lautet die IP-Adresse 10:20:30:40, der Port 59999 und der Oracle-Service "myomy1": 10:20:30:40:59999/myomy1.

      Eine IPv6-Adresse für denselben Port und Service sieht dann wie folgt aus: [6543:ef4:0:1:f587:l249:12f9:a3cd]:59999/myomy110:20:30:40:59999/myomy1.

    Stellen Sie sicher, dass die Oracle-Instanz so konfiguriert wird, dass Easy Connect zulässig ist. Wenn der Oracle-Client vollständig installiert ist, Sie jedoch die Easy Connect-Syntax zum Herstellen der Verbindung verwenden möchten, müssen Sie sicherstellen, dass die Datei sqlnet.ora auf dem Client so konfiguriert ist, dass die Verwendung von Easy Connect zulässig ist, und dass der Oracle-Server so konfiguriert ist, dass die Easy Connect-Syntax zulässig ist. Falls die Oracle-Instanz nicht die standardmäßige Oracle-Portnummer überwacht, muss eine Verbindungssyntax verwendet werden, in der die jeweilige Portnummer angegeben ist.

  5. Wählen Sie den Authentifizierungstyp, der für die Herstellung einer Verbindung mit der Datenbank verwendet werden soll: Datenbankauthentifizierung oder Betriebssystemauthentifizierung.
    • Wenn Sie Betriebssystemauthentifizierung wählen, müssen Sie keinen Benutzernamen und kein Kennwort eingeben. Die Verbindung wird anhand des Anmeldenamens und des Kennwortes hergestellt, die zur Anmeldung beim Betriebssystem verwendet wurden. Falls es sich bei den Anmeldedaten für das Betriebssystem nicht um eine gültige Datenbankanmeldung handelt, kann keine Verbindung hergestellt werden. Beachten Sie, dass bei Verwendung des Oracle Instant Client die Betriebssystemauthentifizierung nicht verwendet werden kann.
      Hinweis:

      Wenn Sie die Betriebssystemauthentifizierung in Oracle verwenden, ist das Betriebssystem mit der Zeichenfolge "os_authent_prefix" (standardmäßig OPS$) als Präfix versehen und wird in der Tabelle "USERNAME" gespeichert. Beim Herstellen einer Verbindung mit der Geodatabase darf der Benutzername maximal 30 Zeichen umfassen. In diesen bestimmten Fällen gibt ArcGIS den Benutzernamen in Anführungszeichen an und übergibt ihn an die Datenbank. Diese Anführungszeichen werden bei den 30 Zeichen mitgezählt.

    • Wenn Sie Datenbankauthentifizierung auswählen, müssen Sie in den Textfeldern Benutzername und Kennwort einen gültigen Datenbankbenutzernamen und ein Kennwort angeben. Benutzernamen dürfen maximal 30 Zeichen lang sein.

      Deaktivieren Sie die Option Benutzername und Kennwort speichern, wenn Sie die Anmeldeinformationen nicht als Teil der Verbindung speichern möchten. Dies erhöht die Sicherheit der Datenbank. Allerdings werden Sie in diesem Fall bei jedem Verbindungsaufbau zur Eingabe eines Benutzernamens und eines Kennwortes aufgefordert.

    Hinweis:

    Die Option Benutzername und Kennwort speichern muss für Verbindungsdateien aktiviert sein, die die Datenbankauthentifizierung verwenden und ArcGIS-Web-Services den Zugriff auf die Datenbank gewähren. Dies gilt auch, wenn Sie in ArcGIS Pro nach Daten suchen möchten, auf die über diese Verbindungsdatei zugegriffen wird.

  6. Klicken Sie auf OK, um die Verbindungsdatei zu erstellen.

Unter Datenbanken im Bereich Katalog wird eine Datenbankverbindung angezeigt, und im Verzeichnis des ArcGIS Pro-Projekts wird eine Verbindungsdatei (.sde) erstellt.

Sie können die Datei umbenennen, indem Sie im Bereich Katalog einen neuen Namen eingeben und die Eingabetaste drücken.

Herstellen einer Verbindung von ArcGIS Server

Legen Sie nach der Installation eines 64-Bit-Clients für Oracle auf allen Computer in der ArcGIS Server-Site Variablen fest, erstellen Sie eine Datenbankverbindungsdatei, gewähren Sie Berechtigungen, und registrieren Sie die Datenbank bei der ArcGIS Server-Site.

Festlegen Sie die PATH-Umgebungsvariable (nur Windows)

Legen Sie für die PATH-Umgebungsvariable auf jedem ArcGIS Server Windows-Server den Speicherort der Oracle-Client-Installation fest. Anweisungen zum Festlegen der PATH-Umgebungsvariable finden Sie in der Microsoft Windows-Dokumentation.

Wenn ArcGIS Server bereits ausgeführt wurde, bevor Sie den Oracle-Client konfiguriert und die PATH-Variable festgelegt haben, müssen Sie ArcGIS Server neu starten. Der Neustart von ArcGIS Server ist über die Windows-Dienste-Oberfläche möglich.

Festlegen der Umgebungsvariablen LD_LIBRARY_PATH (nur Linux und Oracle Administrator-, Developer- oder Runtime-Cient)

Wenn Sie den Oracle Administrator-, Developer- oder Runtime-Client installiert haben, legen Sie die Systemvariable LD_LIBRARY_PATH auf das Startverzeichnis des Oracle-Clients fest.

Wenn Sie den Oracle Instant-Client installiert haben, legen Sie die Variable LD_LIBRARY_PATH im init_user_param.sh-Skript fest.

Ändern des Skripts init_user_param.sh (nur Linux)

Nach der Installation der Datenbank-Clientdateien ändern Sie das Skript init_user_param.sh, das mit ArcGIS Server installiert wird, um auf die Clientdateien zu verweisen. Sie können auf dieses Skript zugreifen, indem Sie zum Verzeichnis <ArcGIS Server installation directory>/arcgis/server/usr navigieren.

Sie müssen das Skript init_user_param.sh auf allen Computern der ArcGIS Server-Site aktualisieren.

Hinweis:

Wenn Ihr Benutzerprofil auf den Oracle-Client verweist, sich die Client-Informationen zwischen dem Benutzerprofil und init_user_param.sh jedoch unterscheiden, kann es zu Verbindungsproblemen zwischen ArcGIS Server und der Datenbank kommen. Um Verbindungsproblemen entgegenzuwirken, entfernen Sie die Referenzinformationen aus dem Benutzerprofil, und referenzieren Sie die Datenbank-Clientbibliotheken erneut, indem Sie die folgenden Schritte ausführen:

  1. Stellen Sie sicher, dass der Besitzer der ArcGIS Server-Installation auf jedem Computer zumindest über Lese- und Ausführungsberechtigungen für die Datenbank-Clientbibliotheken verfügt.
  2. Öffnen Sie das Skript init_user_param.sh in einem Texteditor.
  3. Entfernen Sie die Kommentarzeichen (#) aus den Zeilen, die mit export beginnen.

    Wenn Sie den Oracle Administrator-, Developer- oder Runtime-Client installiert haben, entfernen Sie die Kommentarzeichen aus allen Oracle-Zeilen, die mit export beginnen.

    #
    # For connection with Oracle Runtime or Administrator Client
    #
    export ORACLE_BASE=<Oracle_Installdir>/app
    export ORACLE_HOME=$ORACLE_BASE/<Oracle_release>/product/<Oracle_version>/<client_version>
    export ORACLE_SID=<set when applicable>
    export TNS_ADMIN=<set when applicable. e.g.$ORACLE_HOME/network/admin>
    export PATH=$ORACLE_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

    Wenn Sie die Oracle Database Instant Client-Bibliotheken verwenden, müssen Sie nur die Auskommentierung aufheben und $LD_LIBRARY_PATH festlegen. Beispiel:

    #
    # For connection with Oracle Instant Client
    #
    export LD_LIBRARY_PATH=<Location_to_instantclient_11_2>:$LD_LIBRARY_PATH

  4. Legen Sie Werte für die Exportvariablen fest.
    • Heben Sie bei Oracle Administrator-, Developer- oder Runtime-Clients die Auskommentierung auf, und legen Sie mithilfe der Informationen zu Ihrer Implementierung die folgenden Variablen fest:
      • ORACLE_BASE=<Oracle_Installdir>

        <Oracle_Installdir> ist der Pfad zum Verzeichnis der obersten Ebene, in dem der Oracle-Client installiert ist, sowie dessen Name.

      • ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1

        Dies ist der Pfad zu den Oracle-Clientbibliotheksdateien. Legen Sie für ORACLE_HOME das Verzeichnis fest, in dem diese sich befinden. Standardmäßig lautet der Verzeichnisname "client_1", Ihre Installation kann jedoch einen anderen Verzeichnisnamen haben.

      • Wenn Sie eine Oracle-System-ID (SID) für die Verbindung verwenden, legen Sie für ORACLE_SID= die Oracle-System-ID Ihrer Datenbank fest. Wird die Verbindung mithilfe einer Easy Connect-Zeichenfolge hergestellt, kommentieren Sie diese Zeile aus.
      • Legen Sie für TNS_ADMIN= den Speicherort der TNS-Administrationsdateien des Oracle-Clients fest. Wird die Verbindung mithilfe einer Easy Connect-Zeichenfolge hergestellt, müssen Sie diesen Wert nicht festlegen. Kommentieren Sie diese Zeile stattdessen aus.
    • Heben Sie bei Oracle Instant Clients die Auskommentierung auf, und legen Sie lediglich die LD_LIBRARY_PATH-Variable fest. Ersetzen Sie hierzu <Location_to_instantclient> durch den Pfad zum Verzeichnis sowie den Namen des Verzeichnisses, in dem sich die Oracle Instant Client-Dateien befinden.
    • Wenn ArcGIS Server und Oracle auf demselben Server installiert sind, heben Sie die Auskommentierung auf, und legen Sie die folgenden Variablen fest:
      • ORACLE_BASE=<Oracle_Installdir>

        <Oracle_Installdir> ist der Pfad zum Verzeichnis der obersten Ebene, in dem Oracle installiert ist, sowie dessen Name.

      • ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1

        Dies ist der Pfad zu den Oracle-Bibliotheksdateien. Legen Sie für ORACLE_HOME das Verzeichnis fest, in dem diese sich befinden. Standardmäßig lautet der Verzeichnisname "db_<n>", Ihre Installation kann jedoch einen anderen Verzeichnisnamen haben.

      • Wenn Sie eine Oracle-System-ID (SID) für die Verbindung verwenden, legen Sie für ORACLE_SID= die Oracle-System-ID Ihrer Datenbank fest. Wird die Verbindung mithilfe einer Easy Connect-Zeichenfolge hergestellt, kommentieren Sie diese Zeile aus.
      • Legen Sie für TNS_ADMIN= den Speicherort der TNS-Administrationsdateien des Oracle-Clients fest. Wird die Verbindung mithilfe einer Easy Connect-Zeichenfolge hergestellt, müssen Sie diesen Wert nicht festlegen. Kommentieren Sie diese Zeile stattdessen aus.
  5. Speichern und schließen Sie das Skript.
  6. Damit Ihre Änderungen an der Datei init_user_param.sh wirksam werden, müssen Sie ArcGIS Server neu starten.

    Führen Sie dazu das Skript stopserver.sh und dann das Skript startserver.sh auf jedem Computer der ArcGIS Server-Site aus.

    ./stopserver.sh

    ./startserver.sh

Erstellen einer Datenbankverbindungsdatei

Erstellen Sie wie oben beschrieben über das Dialogfeld Datenbankverbindung in ArcGIS Pro eine Datenbankverbindungsdatei

Alternativ können Sie auch das Werkzeug Datenbankverbindung erstellen in ArcGIS Pro ausführen oder mithilfe von Python den Befehl Datenbankverbindung erstellen auf einem ArcGIS Server-Computer ausführen und eine Datenbankverbindungsdatei (.sde) erstellen, die eine Verbindung zu der Datenbank herstellt.

Die folgenden Informationen beziehen sich auf die Erstellung einer Datenbankverbindungsdatei zur Verwendung mit ArcGIS Server:

  • Speichern Sie die Benutzerinformationen mit der Verbindungsdatei.
  • Wenn Sie stattdessen die Betriebssystemauthentifizierung verwenden, müssen Sie ein Domänenkonto für das ArcGIS Server-Konto verwenden und dieses zur Oracle-Datenbank hinzufügen.

Gewähren von Berechtigungen

Dem Datenbankbenutzer, der Datenbankrolle bzw. dem ArcGIS Server-Konto (bei Verwendung der Betriebssystemauthentifizierung), die Sie zum Herstellen einer Datenbankverbindung verwenden, müssen Berechtigungen in der Datenbank erteilt werden, um auf die zu veröffentlichenden Daten zugreifen zu können. Die Berechtigungen und die Umstände, unter denen Sie den Benutzern diese Berechtigungen erteilen müssen, lauten wie folgt:

BerechtigungGrund

CREATE SESSION

Ist erforderlich, um eine Verbindung mit der Datenbank herzustellen.

CREATE TABLE

Auswahlsätze verursachen die Erstellung einer Protokolldateitabelle in der Geodatabase. Wenn ein Benutzer nicht über diese Berechtigung verfügt, werden im Schema des SDE-Benutzers Protokolldateitabellen erstellt.

SELECT-Berechtigungen für zu veröffentlichende Datasets

Erteilen Sie dem Benutzer oder dem ArcGIS-Konto mindestens SELECT-Berechtigungen für die Datasets, die veröffentlicht werden sollen.

INSERT-, UPDATE- oder DELETE-Berechtigungen für Daten, die in editierbaren Feature-Services veröffentlicht werden

Um Daten über einen Feature-Service zu bearbeiten, müssen die erforderlichen Berechtigungen für die Bearbeitung von Datasets gewährt werden.

Die ersten beiden oben aufgeführten Berechtigungen müssen vom Datenbankadministrator gewährt werden. Wenn die Daten sich in einer Geodatabase befinden, muss der Datenbesitzer die erforderlichen Berechtigungen für die Datasets gewähren. Befinden sie sich in einer Datenbank, kann der Datenbesitzer Berechtigungen für Datasets aus ArcGIS erteilen, oder der Datenbankadministrator kann die erforderlichen Berechtigungen mithilfe von Datenbankwerkzeugen gewähren.

Wenn Sie die Geodatabase als verwaltete Datenbank für eine eigenständige oder verbundene ArcGIS Server-Site registrieren, muss der Benutzer, mit dessen Konto Sie die Verbindung herstellen, über ausreichende Berechtigungen zum Erstellen von Daten in der Geodatabase verfügen.

Weitere Informationen finden Sie unter Berechtigungen für Geodatabases in Oracle oder Berechtigungen zum Verwenden von ArcGIS mit einer Oracle-Datenbank.

Registrieren der Datenbank

Damit die ArcGIS Server-Site auf die Daten zugreifen kann, müssen Sie mithilfe der erstellten Datenbankverbindungsdatei einen registrierten Data Store in ArcGIS Pro hinzufügen oder ein Data-Store-Element im Portal hinzufügen.