# Oracle

In diesem Abschnitt wird erläutert, wie die Verbindung mit einem Oracle-Ziel anhand des Oracle-Zielkonnektors konfiguriert wird. Oracle kann nur als Ziel in einer Replikationsaufgabe verwendet werden. Bevor Sie eine Verbindung mit einem Oracle-Ziel herstellen können, müssen Sie die [Erforderliche Berechtigungen](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Permissi) in der Datenbank konfigurieren. Wenn Sie eine Verbindung zu Oracle über Data Movement gateway herstellen, müssen Sie auch den Treiber wie in [Treibereinrichtung](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Driver) beschrieben installieren.

Weitere Informationen zu den Einschränkungen und Überlegungen bei der Verwendung des Oracle-Konnektors finden Sie unter [Einschränkungen und Überlegungen](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Limitati).

## Einrichten von Verbindungseigenschaften

Gehen Sie wie folgt vor, um den Konnektor zu konfigurieren:

1. Klicken Sie in Verbindungen auf Verbindung erstellen.

2. Wählen Sie den Oracle-Zielkonnektor aus und geben Sie dann die folgenden Einstellungen an:

### Datenziel

* Daten-Gateway: Wählen Sie bei der Arbeit mit Data Movement gateway das Daten-Gateway aus, das zum Testen der Verbindung zum Oracle-Ziel verwendet wird. Dabei muss es sich um das gleiche Gateway wie für den Zugriff auf die Datenquelle handeln.

  Informationshinweis

  * Dieses Feld ist für Qlik Talend Cloud Starter-Abonnements nicht verfügbar, da Data Movement gateway für diese Abonnementstufe nicht unterstützt wird.

  * Sie müssen auch den entsprechenden Treiber auf dem Data Movement gateway-Rechner installieren. Weitere Einzelheiten finden Sie unter [Treibereinrichtung](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Driver) unten.

* Verbindungsstring: Der Oracle-Verbindungsstring für die Oracle-Datenbank, mit der Sie arbeiten möchten.

  Informationshinweis

  * Beim Replizieren an ein Oracle Autonomous Data Warehouse müssen Sie zuerst das in [Verbindung zu einem Oracle Autonomous Data Warehouse](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/oracle-target.htm#Connecti) beschriebene Verfahren durchführen.
  * Bei diesen Informationen wird zwischen Groß- und Kleinschreibung unterschieden.

### Kontoeigenschaften

Benutzername und Kennwort: Benutzername und Kennwort eines Benutzers, der zum Zugriff auf die Oracle Server-Datenbank berechtigt ist.

### Interne Eigenschaften

Interne Eigenschaften sind für besondere Anwendungsfälle vorgesehen und werden daher nicht im Dialogfenster angezeigt. Sie sollten sie nur verwenden, wenn Sie vom Qlik Support dazu angewiesen werden.

Verwenden Sie die Schaltflächen the Neu erstellen icon und the Abbrechen icon rechts neben den Feldern, um Eigenschaften wie erforderlich hinzuzufügen oder zu entfernen.

### Name

Der Anzeigename für die Verbindung.

## Voraussetzungen

### Erforderliche Berechtigungen

Dem im Verbindungsstring angegebenen Benutzer müssen die folgenden Berechtigungen in der Oracle-Datenbank gewährt werden:

* CREATE ANY TABLE

* CREATE ANY INDEXES

* ALTER ANY TABLE

* DROP ANY TABLE

* INSERT ANY TABLE

* UPDATE ANY TABLE

* DELETE ANY TABLE

* SELECT ANY TABLE

* SELECT all\_indexes

* SELECT all\_ind\_columns

* SELECT all\_constraints

* SELECT all\_cons\_columns

* LOCK ANY TABLE

### Treibereinrichtung

Sie können den driver mit dem Treiberinstallations-Dienstprogramm (empfohlen) oder manuell installieren. Eine manuelle Installation sollte nur in dem unwahrscheinlichen Fall versucht werden, dass Sie beim Verwenden des Treiberinstallations-Dienstprogramms auf Probleme stoßen.

#### Verwenden des Treiberinstallations-Dienstprogramms zum Installieren des Treibers

In diesem Abschnitt wird die Installation des erforderlichen driver beschrieben. Der Prozess umfasst das Ausführen eines Skripts, das den erforderlichen driver automatisch herunterlädt, installiert und konfiguriert. Sie können auch Skripte ausführen, um den driver bei Bedarf zu aktualisieren und zu deinstallieren.

Vorbereiten der Installation

* Vergewissern Sie sich, dass Python 3.6 oder höher auf dem Data Movement-Gateway-Server installiert ist.

  Python ist in den meisten Linux-Distributionen vorinstalliert. Führen Sie den folgenden Befehl aus, um zu prüfen, welche Python-Version auf Ihrem System installiert ist.

  python3 --version

Installieren von driver

So laden Sie den driver herunter und installieren ihn:

1. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

   opt/qlik/gateway/movement/drivers/bin

2. Führen Sie den folgenden Befehl aus:

   Syntax:

   ./install oracle

   Wenn der driver (aufgrund von Zugriffsbeschränkungen oder technischen Fehlern) nicht heruntergeladen werden kann, wird eine Meldung mit Anleitungen dazu angezeigt, wo Sie den driver herunterladen können und wohin er im Data Movement-Gateway-Computer kopiert werden muss. Führen Sie dann den Befehl install oracle erneut aus.

   Andernfalls wird die Endbenutzer-Lizenzvereinbarung für den driver angezeigt.

3. Gehen Sie folgendermaßen vor:

   * Drücken Sie mehrmals die [Eingabetaste], um langsam durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
   * Drücken Sie mehrmals die Leertaste, um schnell durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
   * Drücken Sie q, um den Lizenztext zu schließen und die Optionen zum Akzeptieren der Endbenutzer-Lizenzvereinbarung anzuzeigen.

4. Gehen Sie folgendermaßen vor:

   * Geben Sie „y“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung zu akzeptieren und mit der Installation zu beginnen.

   * Geben Sie „n“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung abzulehnen und den Installationsvorgang abzubrechen.

   * Geben Sie „v“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung erneut anzuzeigen.

   Der driver wird installiert.

Aktualisieren des driver

Führen Sie den Befehl „update“ aus, wenn Sie vorherige Versionen des driver deinstallieren möchten, bevor Sie den bereitgestellten driver installieren.

So laden Sie den driver herunter und aktualisieren ihn:

1. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

   opt/qlik/gateway/movement/drivers/bin

2. Führen Sie den folgenden Befehl aus:

   Syntax:

   ./update oracle

   Wenn der driver (aufgrund von Zugriffsbeschränkungen oder technischen Fehlern) nicht heruntergeladen werden kann, wird eine Meldung mit Anleitungen dazu angezeigt, wo Sie den driver herunterladen können und wohin er im Data Movement-Gateway-Computer kopiert werden muss. Führen Sie dann den Befehl update oracle erneut aus.

   Andernfalls wird die Endbenutzer-Lizenzvereinbarung für den driver angezeigt.

3. Gehen Sie folgendermaßen vor:

   * Drücken Sie mehrmals die [Eingabetaste], um langsam durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
   * Drücken Sie mehrmals die Leertaste, um schnell durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
   * Drücken Sie q, um den Lizenztext zu schließen und die Optionen zum Akzeptieren der Endbenutzer-Lizenzvereinbarung anzuzeigen.

4. Gehen Sie folgendermaßen vor:

   * Geben Sie „y“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung zu akzeptieren und mit der Installation zu beginnen.
   * Geben Sie „n“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung abzulehnen und den Installationsvorgang abzubrechen.
   * Geben Sie „v“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung von Anfang an anzuzeigen.

   Der alte driver wird deinstalliert und der neue driver installiert.

Deinstallieren des driver

Führen Sie den Befehl „uninstall“ aus, wenn Sie den driver deinstallieren möchten.

So deinstallieren Sie den driver:

1. Halten Sie alle Aufgaben an, die für die Verwendung dieses Konnektors konfiguriert sind.

2. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

   opt/qlik/gateway/movement/drivers/bin

3. Führen Sie den folgenden Befehl aus:

   Syntax:

   ./uninstall oracle

   Der driver wird deinstalliert.

#### Manuelles Installieren des Treibers

Nehmen Sie nur dann eine manuelle Installation des driver vor, wenn die automatische Treiberinstallation nicht erfolgreich abgeschlossen werden konnte.

Laden Sie nach der Installation von Data Movement gateway den Treiber oracle-instantclient-basiclite-&lt;version&gt;.x86\_64.rpm herunter. Einen direkten Download-Link zur unterstützten Version finden Sie unter binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/oracle.yaml. Kopieren Sie nach Abschluss des Downloads die RPM auf den Data Movement gateway-Rechner.

Öffnen Sie dann auf dem Data Movement Gateway-Server eine Shell-Eingabeaufforderung und führen Sie Folgendes durch:

1. Halten Sie den Data Movement Gateway-Dienst an:

   sudo systemctl stop repagent

2. Bestätigen Sie optional, dass der Dienst angehalten wurde:

   sudo systemctl status repagent

   Der Status lautet wie folgt:

   Active: inactive (dead) since &lt;timestamp&gt; ago

3. Installieren Sie den Treiber (RPM).

4. Falls nicht bereits in Ihrem System enthalten, erstellen Sie zusätzlich einen symbolischen Link im Verzeichnis `$Oracle_Home\lib`. Nennen Sie den Link `libclntsh.so`, wobei dieser auf eine bestimmte Version dieser Datei verweisen muss.

   Beispiel:

   lrwxrwxrwx 1 oracle oracle 63 Oct 2 14:16 libclntsh.so -&gt; /u01/app/oracle/home/lib/libclntsh.so.21.1

5. Ändern Sie das Arbeitsverzeichnis zu &lt;Data Movement Gateway-Install-Dir&gt;/bin und hängen Sie die Umgebungsvariable `LD_LIBRARY_PATH` an das Verzeichnis des Oracle Instant Client und an das Verzeichnis Data Movement Gatewaylib an, indem Sie den Speicherort des Treibers in die Datei `site_arep_login.sh` kopieren:

   echo "export LD\_LIBRARY\_PATH=\$LD\_LIBRARY\_PATH:/opt/oracle/instantclient\_&lt;version&gt;:/opt/qlik/gateway/movement/lib/" &gt;&gt; site\_arep\_login.sh

6. Bestätigen Sie optional, dass der Speicherort des Treibers kopiert wurde:

   ```
   cat site_arep_login.sh
                           
   ```

7. Starten Sie den Data Movement Gateway-Dienst:

   sudo systemctl start repagent

8. Bestätigen Sie optional, dass der Dienst gestartet wurde:

   sudo systemctl status repagent

   Der Status lautet wie folgt:

   Active: active (running) since &lt;timestamp&gt; ago

### Verbindung zu einem Oracle Autonomous Data Warehouse

Das folgende Verfahren muss durchgeführt werden, wenn in ein Oracle Autonomous Data Warehouse repliziert wird.

Um die Verbindung mit Oracle Autonomous Data Warehouse (ADW) einzurichten, benötigen Sie die Client Credentials (Wallet) ZIP-Datei, die Sie beim Einrichten der Oracle Autonomous Data Warehouse-Umgebung heruntergeladen haben.

So aktivieren Sie Qlik Talend Data Integration für die Verbindung mit Oracle Autonomous Data Warehouse:

1. Extrahieren Sie den Inhalt der Client Credentials ZIP-Datei in den gewünschten Ordner.

   Dies kann jeder beliebige Ordner sein, aber zu Zwecken dieses Verfahrens ist /home/adw\_credentials der Linux-Ordner, der die extrahierten Dateien enthält.

2. Bearbeiten Sie in dem Ordner mit den extrahierten Dateien die Datei sqlnet.ora, indem Sie ?/network/admin durch den Pfad zu dem Ordner mit den extrahierten Dateien ersetzen:

   `WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adw_credentials")))`

   `SSL_SERVER_DN_MATCH=yes`

3. Erstellen Sie die TNS\_ADMIN-Umgebungsvariable und legen Sie sie auf den Speicherort der Credentials-Datei fest.

   Führen Sie die folgenden Befehle aus:

   `export TNS_ADMIN=/home/adw_credentials`

   `export PATH=$TNS_ADMIN:$PATH`

4. Geben Sie im Feld Verbindungsstring des Oracle-Ziel-Konnektors einen der Namen aus der Datei tnsnames.ora ein.

Weitere Informationen zum Einrichten der Verbindung mit Oracle ADW finden Sie unter:

[Verbinden von Autonomous Transaction Processing mithilfe einer Clientanwendung](https://docs.oracle.com/en/cloud/paas/atp-cloud/atpug/connect-preparing.html#GUID-EFAFA00E-54CC-47C7-8C71-E7868279EF3B)

## Einschränkungen und Überlegungen

Die folgenden Einschränkungen gelten, wenn Oracle als Replikationsziel verwendet wird:

* Es ist nicht möglich, in der Oracle-Datenbank neue Schemas zu erstellen. Um an ein neues Schema zu replizieren, muss der Name des neuen Schemas bereits in der Zieldatenbank vorhanden sein. Geben Sie dann den neuen Schemanamen auf der Registerkarte [Metadata](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-metadata.htm) der Aufgabeneinstellungen an.

* Wenn Sie im [stapeloptimierten Anwendungsmodus](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-replication.htm) arbeiten, werden leere LOB-Spalten möglicherweise als NULL-Werte repliziert.

* Wenn die Option LOB-Größe begrenzen auf aktiviert ist und eine Tabelle NCLOB-Daten enthält, wird nach Abschluss des vollständigen Ladens die NCLOB-Größe im Ziel auf die Hälfte der Größe abgeschnitten, die im Feld [LOB-Größe begrenzen auf](https://help.qlik.com/de-DE/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Replicating/replicating-settings-metadata.htm) angegeben ist. Sie wird je nach Grenzwert von CDC weiter abgeschnitten.

## Datentypen

Informationen zum nativen Datentyp werden beibehalten und in der Spalte Nativer Datentyp in Datensatzansichten angezeigt. Wenn die Spalte nicht angezeigt wird, müssen Sie die Spaltenauswahl in der Datensatzansicht öffnen und die Spalte Nativer Datentyp auswählen.

Datentypen

| Qlik Cloud-Datentypen | Oracle-Datentypen |
| --- | --- |
| BOOLEAN | NUMBER (1) |
| BYTES | RAW (Länge) |
| DATE | DATETIME |
| TIME | TIMESTAMP (0) |
| DATETIME | Wenn Dezimalstellen &lt;= 9, dann TIMESTAMP (Dezimalstellen)<br><br>Andernfalls VARCHAR2 (37) |
| INT1 | NUMBER (3) |
| INT2 | NUMBER (5) |
| INT4 | NUMBER (10) |
| INT8 | NUMBER (19) |
| NUMERIC | NUMBER (p,s) |
| REAL4 | BINARY\_FLOAT |
| REAL8 | BINARY\_DOUBLE |
| STRING | Mit Datumsangabe: DATE<br><br>Mit Zeitangabe: TIMESTAMP<br><br>Mit Zeitstempelangabe: TIMESTAMP<br><br>Mit Angabe von timestamp\_with\_timezone: TIMESTAMP WITH TIMEZONE<br><br>Mit Angabe von timestamp\_with\_timezone: TIMESTAMP WITH LOCAL TIMEZONE<br><br>Mit Angabe von interval\_year\_to\_month: INTERVAL YEAR TO MONTH<br><br>Mit Angabe von interval\_day\_to\_second: INTERVAL DAY TO SECOND<br><br>Wenn Länge &gt; 4000: CLOB<br><br>In allen anderen Fällen: VARCHAR2 (Länge) |
| UINT1 | NUMBER (3) |
| UINT2 | NUMBER (5) |
| UINT4 | NUMBER (10) |
| UINT8 | NUMBER (19) |
| WSTRING | NVARCHAR2 (Länge)<br><br>Hinweis: Wenn die Länge größer als 2000 ist, lautet der Spaltendatentyp NCLOB. |
| BLOB | BLOB<br><br>Informationshinweis<br><br><ul> <li>Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von BLOBs für eine spezifische Aufgabe aktivieren.</li> <li>Während CDC oder während des vollständigen Ladens werden bei aktivierter Option <span>Unbegrenzte LOB-Größe zulassen</span> LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt. </li> </ul> |
| CLOB | CLOB<br><br>Informationshinweis<br><br><ul> <li>Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von CLOBs für eine spezifische Aufgabe aktivieren.</li> <li>Während CDC oder während des vollständigen Ladens werden bei aktivierter Option <span>Unbegrenzte LOB-Größe zulassen</span> LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt. </li> </ul> |
| NCLOB | NCLOB<br><br>Informationshinweis<br><br><ul> <li>Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von NCLOBs für eine spezifische Aufgabe aktivieren.</li> <li>Während CDC oder während des vollständigen Ladens werden bei aktivierter Option <span>Unbegrenzte LOB-Größe zulassen</span> LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt. </li> </ul> |
| Der XMLTYPE-Zieldatentyp ist nur in Oracle-zu-Oracle-Replikationsaufgaben relevant. Siehe den Hinweis unten. | XMLTYPE |