Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Oracle

In diesem Abschnitt wird erläutert, wie die Verbindung mit einem Oracle-Ziel anhand des Oracle-Ziel-Konnektors 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 in der Datenbank konfigurieren. Wenn Sie eine Verbindung zu Oracle über Data Movement Gateway herstellen, müssen Sie auch den Treiber wie in Treibereinrichtung beschrieben installieren.

Weitere Informationen zu den Einschränkungen und Überlegungen bei der Verwendung des Oracle-Konnektors finden Sie unter Einschränkungen und Überlegungen.

Einrichten von Verbindungseigenschaften

Dieser Abschnitt beschreibt die verfügbaren Verbindungseigenschaften. Alle Eigenschaften sind erforderlich, soweit nicht anders angegeben.

Datenziel

  • Daten-Gateway: Wählen Sie das Data Movement 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
    • Erfordert Data Movement Gateway 2023.5.10 oder höher.
    • Sie müssen auch den entsprechenden Treiber auf dem Data Movement Gateway-Rechner installieren. Weitere Einzelheiten finden Sie unter Treibereinrichtung unten.

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

    Informationshinweis

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 Neu erstellen und Abbrechen 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.

  • 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

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.

  5. Der driver wird installiert.

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.
  5. Der alte driver wird deinstalliert und der neue driver installiert.

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-<version>.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

  3. Der Status lautet wie folgt:

    Active: inactive (dead) since <timestamp> ago

  4. Installieren Sie den Treiber (RPM).
  5. 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.

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

  6. Ändern Sie das Arbeitsverzeichnis zu <Data Movement Gateway-Install-Dir>/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_<version>:/opt/qlik/gateway/movement/lib/" >> site_arep_login.sh

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

    cat site_arep_login.sh
  8. Starten Sie den Data Movement Gateway-Dienst:

    sudo systemctl start repagent

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

    sudo systemctl status repagent

    Der Status lautet wie folgt:

    Active: active (running) since <timestamp> 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 Data Movement Gateway 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

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 der Aufgabeneinstellungen an.
  • Wenn Sie im stapeloptimierten Anwendungsmodus 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 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 <= 9, dann TIMESTAMP (Dezimalstellen)

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

Mit Uhrzeitangabe: TIMESTAMP

Mit Zeitstempelangabe: TIMESTAMP

Mit Angabe von timestamp_with_timezone: TIMESTAMP WITH TIMEZONE

Mit Angabe von timestamp_with_local_timezone: TIMESTAMP WITH LOCAL TIME ZONE

Mit Angabe von interval_year_to_month: INTERVAL YEAR TO MONTH

Mit Angabe von interval_day_to_second: INTERVAL DAY TO SECOND

Wenn Länge > 4000: CLOB

In allen anderen Fällen: VARCHAR2 (Länge)

UINT1

NUMBER (3)

UINT2

NUMBER (5)

UINT4

NUMBER (10)

UINT8

NUMBER (19)

WSTRING

NVARCHAR2 (Länge)

Hinweis: Wenn die Länge größer als 2000 ist, lautet der Spaltendatentyp NCLOB.

BLOB

BLOB

Informationshinweis
  • Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von BLOBs für eine spezifische Aufgabe aktivieren.
  • Während CDC oder während des vollständigen Ladens werden bei aktivierter Option Unbegrenzte LOB-Größe zulassen LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt.

CLOB

CLOB

Informationshinweis
  • Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von CLOBs für eine spezifische Aufgabe aktivieren.
  • Während CDC oder während des vollständigen Ladens werden bei aktivierter Option Unbegrenzte LOB-Größe zulassen LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt.

NCLOB

NCLOB

Informationshinweis
  • Um diesen Datentyp in einer Replikationsaufgabe zu verwenden, müssen Sie die Verwendung von NCLOBs für eine spezifische Aufgabe aktivieren.
  • Während CDC oder während des vollständigen Ladens werden bei aktivierter Option Unbegrenzte LOB-Größe zulassen LOB-Datentypen nur in Tabellen mit einem primären Schlüssel oder eindeutigen Index unterstützt.

Der XMLTYPE-Zieldatentyp ist nur in Oracle-zu-Oracle-Replikationsaufgaben relevant. Siehe den Hinweis unten.

XMLTYPE

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!