Freigeben über


Kopieren von Daten von und nach Oracle mithilfe von Azure Data Factory oder Azure Synapse Analytics

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. In Microsoft Fabric können Sie alle erforderlichen Aufgaben ausführen, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

In diesem Artikel wird beschrieben, wie Sie die Kopieraktivität in Azure Data Factory verwenden, um Daten aus einer Oracle-Datenbank und in eine Oracle-Datenbank zu kopieren. Der Artikel baut auf der Übersicht über die Kopieraktivität auf.

Von Bedeutung

Die Oracle Connector Version 2.0 bietet verbesserte native Oracle-Unterstützung. Wenn Sie die Oracle-Connector-Version 1.0 in Ihrer Lösung verwenden, bitte aktualisieren Sie den Oracle-Connector, da sich die Version 1.0 am Ende der Supportphase befindet. Ihre Pipeline schlägt nach dem 31. März 2026 fehl. Ausführliche Informationen zu den Unterschieden zwischen Version 2.0 und Version 1.0 finden Sie in diesem Abschnitt.

Unterstützte Funktionen

Dieser Oracle-Connector wird für die folgenden Funktionen unterstützt:

Unterstützte Funktionen IR
Copy-Aktivität (Quelle/Senke) (1) (2)
Lookup-Aktivität (1) (2)
Skript-Aktivität (1) (2)

① Azure Integration Runtime ② Selbstgehostete Integration Runtime

Eine Liste der Datenspeicher, die als Quellen oder Senken für die Kopieraktivität unterstützt werden, finden Sie in der Tabelle Unterstützte Datenspeicher.

Dieser Oracle-Connector unterstützt insbesondere Folgendes:

  • Die folgenden Versionen einer Oracle-Datenbank für Version 2.0:
    • Oracle Database 19c und höher
    • Oracle Database 18c und höher
    • Oracle Database 12c und höher
    • Oracle Database 11g und höher
  • Die folgenden Versionen einer Oracle-Datenbank für Version 1.0:
    • Oracle 19c R1 (19.1) und höher
    • Oracle 18c R1 (18.1) und höher
    • Oracle 12c R1 (12.1) und höher
    • Oracle 11g R1 (11.1) und höher
    • Oracle 10g R1 (10.1) und höher
    • Oracle 9i R2 (9.2) und höher
    • Oracle 8i R3 (8.1.7) und höher
    • Oracle Database Cloud Exadata Service
  • Paralleles Kopieren aus einer Oracle-Quelle. Weitere Informationen finden Sie im Abschnitt Paralleles Kopieren aus Oracle.

Hinweis

Der Oracle-Proxyserver wird nicht unterstützt.

Voraussetzungen

Wenn sich Ihr Datenspeicher in einem lokalen Netzwerk, in einem virtuellen Azure-Netzwerk oder in Amazon Virtual Private Cloud befindet, müssen Sie eine selbstgehostete Integration Runtime konfigurieren, um eine Verbindung herzustellen.

Handelt es sich bei Ihrem Datenspeicher um einen verwalteten Clouddatendienst, können Sie die Azure Integration Runtime verwenden. Ist der Zugriff auf IP-Adressen beschränkt, die in den Firewallregeln genehmigt sind, können Sie Azure Integration Runtime-IPs zur Positivliste hinzufügen.

Sie können auch das Feature managed virtual network integration runtime (Integration Runtime für verwaltete virtuelle Netzwerke) in Azure Data Factory verwenden, um auf das lokale Netzwerk zuzugreifen, ohne eine selbstgehostete Integration Runtime zu installieren und zu konfigurieren.

Weitere Informationen zu den von Data Factory unterstützten Netzwerksicherheitsmechanismen und -optionen finden Sie unter Datenzugriffsstrategien.

Die Integration Runtime stellt einen integrierten Oracle-Treiber bereit. Daher müssen Sie zum Kopieren von Daten aus und nach Oracle nicht manuell einen Treiber erstellen.

Erste Schritte

Zum Ausführen der Kopieraktivität mit einer Pipeline können Sie eines der folgenden Tools oder SDKs verwenden:

Erstellen eines verknüpften Diensts zu Oracle mittels Benutzeroberfläche

Verwenden Sie die folgenden Schritte, um einen verknüpften Dienst zu Oracle im Azure-Portal zu erstellen.

  1. Navigieren Sie in Ihrem Azure Data Factory- oder Synapse-Arbeitsbereich zur Registerkarte „Verwalten“, wählen Sie „Verknüpfte Dienste“ aus, und klicken Sie dann auf „Neu“:

  2. Suchen Sie nach Oracle, und wählen Sie den Oracle Connector aus.

    Screenshot des Oracle Connectors.

  3. Konfigurieren Sie die Dienstdetails, testen Sie die Verbindung, und erstellen Sie den neuen verknüpften Dienst.

    Screenshot der Konfiguration des verknüpften Diensts für Oracle.

Details zur Connectorkonfiguration

Die folgenden Abschnitte geben Details an von Eigenschaften, die zum Definieren von Entitäten speziell für den Salesforce-Connector verwendet werden.

Eigenschaften des verknüpften Diensts

Die Oracle Connector Version 2.0 unterstützt TLS 1.3. Lesen Sie diesen Abschnitt , um Ihre Oracle Connector-Version von Version 1.0 zu aktualisieren. Einzelheiten zur Eigenschaft finden Sie in den entsprechenden Abschnitten.

Version 2.0

Der verknüpfte Oracle-Dienst unterstützt die folgenden Eigenschaften, wenn Version 2.0 angewendet wird:

Eigenschaft Beschreibung Erforderlich
Typ Die type-Eigenschaft muss auf Oracle festgelegt werden. Ja
version Die von Ihnen angegebene Version. Der Wert ist 2.0. Ja
server Der Speicherort der Oracle-Datenbank, mit der Sie eine Verbindung herstellen möchten. Sie können auf die Servereigenschaftenkonfiguration verweisen, um sie anzugeben. Ja
Authentifizierungstyp Authentifizierungstyp für die Verbindung mit der Oracle-Datenbank. Nur die Standardauthentifizierung wird jetzt unterstützt. Ja
Benutzername Der Benutzername der Oracle-Datenbank. Ja
Kennwort Das Oracle-Datenbankkennwort. Markieren Sie dieses Feld als SecureString, um es sicher zu speichern. Alternativ können Sie auf ein in Azure Key Vault gespeichertes Geheimnis verweisen. Ja
connectVia Die Integration Runtime, die zum Herstellen einer Verbindung mit dem Datenspeicher verwendet werden soll. Weitere Informationen finden Sie im Abschnitt Voraussetzungen. Wenn keine Option angegeben ist, wird die standardmäßige Azure Integration Runtime verwendet. Nein

Je nach Fall können Sie die folgenden zusätzlichen Verbindungseigenschaften im verknüpften Dienst festlegen.

Eigenschaft Beschreibung Erforderlich Standardwert
Verschlüsselungsclient Legt das Verhalten des Verschlüsselungsclients fest Unterstützte Werte sind accepted, , rejected, requestedoder required. Typ: Zeichenfolge Nein required
VerschlüsselungsartenClient Gibt die Verschlüsselungsalgorithmen an, die der Client verwenden kann Unterstützte Werte sind AES128, AES192, AES256, 3DES112, 3DES168. Typ: Zeichenfolge Nein (AES256)
cryptoChecksumClient Gibt das gewünschte Datenintegritätsverhalten an, wenn dieser Client eine Verbindung mit einem Server herstellt Unterstützte Werte sind accepted, , rejected, requestedoder required. Typ: Zeichenfolge Nein required
cryptoChecksumTypesClient Gibt die Krypto-Prüfsummenalgorithmen an, die der Client verwenden kann Unterstützte Werte sind SHA1, SHA256, SHA384, SHA512. Typ: Zeichenfolge Nein (SHA512)
initialLobFetchSize Gibt die Menge an, die die Quelle anfänglich für LOB-Spalten abruft. Typ: int Nein 0
fetchSize Gibt die Anzahl der Bytes an, die der Treiber zuordnet, um die Daten in einem Datenbank-Roundtrip abzurufen. Typ: int Nein 10 MB
statementCacheSize Gibt die Anzahl der Cursor oder Anweisungen an, die für jede Datenbankverbindung zwischengespeichert werden sollen. Typ: int Nein 0
initializationString Gibt einen Befehl an, der unmittelbar nach dem Herstellen einer Verbindung mit der Datenbank zum Verwalten von Sitzungseinstellungen ausgegeben wird Typ: Zeichenfolge Nein NULL
enableBulkLoad Gibt an, ob beim Laden von Daten in die Datenbank Massenkopie oder Batcheinfügung verwendet werden soll. Typ: boolean Nein Wahr
supportV1DataTypes Gibt an, ob die Datentypzuordnungen der Version 1.0 verwendet werden sollen. Legen Sie dies nicht auf "true" fest, es sei denn, Sie möchten die Abwärtskompatibilität mit den Datentypzuordnungen der Version 1.0 beibehalten. Typ: boolean Nein, diese Eigenschaft dient nur zur Abwärtskompatibilität. Falsch
fetchTswtzAsTimestamp Gibt an, ob der Treiber den Spaltenwert mit dem Datentyp TIMESTAMP WITH TIME ZONE als DateTime oder Zeichenfolge zurückgibt Diese Einstellung wird ignoriert, wenn supportV1DataTypes nicht wahr ist. Typ: boolean Nein, diese Eigenschaft dient nur zur Abwärtskompatibilität. Wahr

Beispiel:

{
    "name": "OracleLinkedService",
    "properties": {
        "type": "Oracle",
        "version": "2.0",
        "typeProperties": {
            "server": "<server name>", 
            "username": "<user name>", 
            "password": "<password>", 
            "authenticationType": "<authentication type>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Beispiel: Speichern des Kennworts in Azure Key Vault

{
    "name": "OracleLinkedService",
    "properties": {
        "type": "Oracle",
        "version": "2.0",
        "typeProperties": {
            "server": "<server name>", 
            "username": "<user name>", 
            "authenticationType": "<authentication type>",
            "password": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

server Eigenschaftenkonfiguration

Für die Eigenschaft server können Sie eines der folgenden drei Formate angeben.

Format Beispiel
Verbindungsdeskriptor (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=sales.us.acme.com)))
Easy Connect (Plus)-Benennung salesserver1:1521/sales.us.example.com
Oracle Net Services Name (TNS Alias) ( nur für die selbst gehostete Integrationslaufzeit) Umsatz

In der folgenden Liste sind die unterstützten Parameter aufgeführt, die in server verwendet werden. Wenn Sie Parameter verwenden, die sich nicht in der folgenden Liste befinden, schlägt die Verbindung fehl.

  • Bei Verwendung der Azure-Integrationslaufzeit:

    GASTGEBER
    HAFEN
    PROTOKOLL
    SERVICE_NAME
    SID
    INSTANCE_NAME
    SERVER
    CONNECT_TIMEOUT
    RETRY_COUNT
    RETRY_DELAY
    SSL_VERSION
    SSL_SERVER_DN_MATCH
    SSL_SERVER_CERT_DN

  • Bei Verwendung der selbst gehosteten Integrationslaufzeit:

    GASTGEBER
    HAFEN
    PROTOKOLL
    ENABLE
    Ablaufzeit
    FAILOVER
    Lastenausgleich
    RECV_BUF_SIZE
    SDU
    SEND_BUF_SIZE
    SOURCE_ROUTE
    DIENSTLEISTUNGSTYP
    COLOCATION_TAG
    VERBINDUNGS_ID_PRÄFIX
    Fehlermodus
    GLOBAL_NAME
    HS
    INSTANCE_NAME
    Poolgrenze
    POOL_CONNECTION_CLASS
    POOL_NAME
    POOL_REINHEIT
    RDB_DATABASE
    SHARDING_KEY
    SHARDING_KEY_ID
    SUPER_SHARDING_KEY
    SERVER
    SERVICE_NAME
    SID
    TUNNEL_SERVICE_NAME
    SSL_CLIENT_AUTHENTIFIZIERUNG
    SSL_CERTIFICATE_ALIAS
    SSL_ZERTIFIKAT_FINGERABDRUCK
    SSL_VERSION
    SSL_SERVER_DN_MATCH
    SSL_SERVER_CERT_DN
    WALLET_LOCATION
    CONNECT_TIMEOUT
    RETRY_COUNT
    RETRY_DELAY
    TRANSPORT_CONNECT_TIMEOUT
    RECV_TIMEOUT
    Kompression
    KOMPRESSIONSEBENEN

Version 1.0

Der verknüpfte Oracle-Dienst unterstützt die folgenden Eigenschaften, wenn Version 1.0 angewendet wird:

Eigenschaft Beschreibung Erforderlich
Typ Die type-Eigenschaft muss auf Oracle festgelegt werden. Ja
connectionString Gibt die Informationen an, die zum Herstellen einer Verbindung mit der Oracle-Datenbankinstanz erforderlich sind.
Sie können auch ein Kennwort in Azure Key Vault speichern und die password-Konfiguration aus der Verbindungszeichenfolge pullen. Ausführlichere Informationen finden Sie in den folgenden Beispielen sowie unter Speichern von Anmeldeinformationen in Azure Key Vault.

Unterstützter Verbindungstyp: Sie können Oracle SID oder Oracle-Dienstname zur Identifizierung Ihrer Datenbank verwenden:
– Wenn Sie die SID verwenden: Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;
– Wenn Sie den Dienstnamen verwenden: Host=<host>;Port=<port>;ServiceName=<servicename>;User Id=<username>;Password=<password>;
Für erweiterte native Oracle-Verbindungsoptionen können Sie wahlweise einen Eintrag in der Datei TNSNAMES.ORA auf dem Computer hinzufügen, auf dem die selbstgehostete Integration Runtime installiert ist, und im verknüpften Oracle-Dienst wählen Sie den Verbindungstyp „Oracle-Dienstname“ aus, und konfigurieren Sie den entsprechenden Dienstnamen.
Ja
connectVia Die Integration Runtime, die zum Herstellen einer Verbindung mit dem Datenspeicher verwendet werden soll. Weitere Informationen finden Sie im Abschnitt Voraussetzungen. Wenn keine Option angegeben ist, wird die standardmäßige Azure Integration Runtime verwendet. Nein

Tipp

Wenn Ihnen der Fehler „UPI parameter out of range“ (ORA-01025: URI-Parameter außerhalb des zulässigen Bereichs) angezeigt wird und Sie die Oracle-Version 8i verwenden, fügen Sie Ihrer Verbindungszeichenfolge WireProtocolMode=1 hinzu. Versuchen Sie es anschließend noch mal.

Wenn Sie mehrere Oracle-Instanzen für ein Failoverszenario haben, können Sie den mit Oracle verknüpften Dienst erstellen und den primären Host, den Port, den Benutzernamen, das Kennwort usw. ausfüllen sowie ein neues „Zusätzliche Verbindungseigenschaften“ mit dem Eigenschaftsnamen AlternateServers und dem Wert (HostName=<secondary host>:PortNumber=<secondary port>:ServiceName=<secondary service name>) hinzufügen. Vergessen dabei nicht die eckigen Klammern, und achten Sie auf die Doppelpunkte (:) als Trennzeichen. Beispielsweise definiert der folgende Wert von alternativen Servern zwei alternative Datenbankserver für das Verbindungsfailover: (HostName=AccountingOracleServer:PortNumber=1521:SID=Accounting,HostName=255.201.11.24:PortNumber=1522:ServiceName=ABackup.NA.MyCompany).

Weitere Verbindungseigenschaften, die Sie abhängig von Ihrem Anwendungsfall in der Verbindungszeichenfolge festlegen können:

Eigenschaft Beschreibung Zulässige Werte
ArraySize Die Anzahl von Bytes, die der Connector in einem einzelnen Netzwerkroundtrip abrufen kann. Beispiel: ArraySize=‭10485760‬.

Größere Werte erhöhen den Durchsatz, indem seltener Daten über das Netzwerk abgerufen werden. Kleinere Werte erhöhen die Reaktionszeit, da weniger lange auf die Übertragung von Daten durch den Server gewartet werden muss.
Eine ganze Zahl zwischen 1 und 4.294.967.296 (4 GB). Der Standardwert ist 60000. Der Wert 1 definiert nicht die Anzahl von Bytes, sondern gibt die Zuordnung von Speicherplatz für genau eine Datenzeile an.

Zum Aktivieren der Verschlüsselung bei einer Oracle-Verbindung haben Sie zwei Möglichkeiten:

  • Um die Triple-DES-Verschlüsselung (3DES) und Advanced Encryption Standard (AES) zu verwenden, wechseln Sie aufseiten des Oracle-Servers zu Oracle Advanced Security (OAS), und konfigurieren Sie die Verschlüsselungseinstellungen. Ausführliche Informationen finden Sie in der Oracle-Dokumentation. Der Oracle-ADF-Connector (Application Development Framework) handelt automatisch die zu verwendende Verschlüsselungsmethode als diejenige aus, die Sie in OAS bei der Verbindungsherstellung mit Oracle konfigurieren.

  • Um TLS zu verwenden, richten Sie truststore für die SSL-Serverauthentifizierung ein, indem Sie eine der folgenden drei Methoden anwenden:

    • Methode 1 (empfohlen):

      1. Installieren Sie das TLS- bzw. SSL-Zertifikat, indem Sie es in den lokalen Zertifikatspeicher importieren. Der integrierte Oracle-Treiber kann das erforderliche Zertifikat aus dem Zertifikatspeicher laden.

      2. Konfigurieren Sie im Dienst die Oracle-Verbindungszeichenfolge mit EncryptionMethod=1.

    • Methode 2:

      1. Rufen Sie die TLS- bzw. SSL-Zertifikatinformationen ab. Rufen Sie die DER-codierten (Distinguished Encoding Rules) oder PEM-codierten (Privacy Enhanced Mail) Zertifikatinformationen Ihres TLS- bzw. SSL-Zertifikats ab.

        openssl x509 -inform (DER|PEM) -in [Full Path to the DER/PEM Certificate including the name of the DER/PEM Certificate] -text
        
      2. Konfigurieren Sie im Dienst die Oracle-Verbindungszeichenfolge mit EncryptionMethod=1 und dem entsprechenden Wert von TrustStore. Zum Beispiel, Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;EncryptionMethod=1;TrustStore= data:// -----BEGIN CERTIFICATE-----<certificate content>-----END CERTIFICATE-----

        Hinweis

        • Dem Wert des Felds für TrustStore sollte data:// vorangestellt werden.
        • Wenn Sie Inhalt für mehrere Zertifikate angeben, geben Sie den Inhalt jedes Zertifikats zwischen -----BEGIN CERTIFICATE----- und -----END CERTIFICATE----- an. Die Anzahl der Gedankenstriche (-----) sollte vor und nach BEGIN CERTIFICATE und END CERTIFICATE identisch sein. Beispiel:
          -----BEGIN CERTIFICATE-----<certificate content 1>-----END CERTIFICATE-----
          -----BEGIN CERTIFICATE-----<certificate content 2>-----END CERTIFICATE-----
          -----BEGIN CERTIFICATE-----<certificate content 3>-----END CERTIFICATE-----
        • Das Feld für TrustStore unterstützt eine Länge von bis zu 8.192 Zeichen.
    • Methode 3:

      1. Erstellen Sie die truststore-Datei mit einem starken Verschlüsselungsverfahren wie AES256.

        openssl pkcs12 -in [Full Path to the DER/PEM Certificate including the name of the DER/PEM Certificate] -out [Path and name of TrustStore] -passout pass:[Keystore PWD] -keypbe AES-256-CBC -certpbe AES-256-CBC -nokeys -export
        
      2. Legen Sie die truststore-Datei auf dem Computer mit der selbstgehosteten Integration Runtime ab. Legen Sie die Datei beispielsweise unter C:\MyTrustStoreFile ab.

      3. Konfigurieren Sie im Dienst die Oracle-Verbindungszeichenfolge mit EncryptionMethod=1 und dem entsprechenden Wert von TrustStore/TrustStorePassword. Beispiel: Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;EncryptionMethod=1;TrustStore=C:\\MyTrustStoreFile;TrustStorePassword=<trust_store_password>.

Beispiel:

{
    "name": "OracleLinkedService",
    "properties": {
        "type": "Oracle",
        "typeProperties": {
            "connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Beispiel: Speichern des Kennworts in Azure Key Vault

{
    "name": "OracleLinkedService",
    "properties": {
        "type": "Oracle",
        "typeProperties": {
            "connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;",
            "password": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Dataset-Eigenschaften

Dieser Abschnitt enthält eine Liste der Eigenschaften, die vom Oracle-Dataset unterstützt werden. Eine vollständige Liste mit den Abschnitten und Eigenschaften, die zum Definieren von Datasets zur Verfügung stehen, finden Sie im Artikel zu Datasets.

Legen Sie zum Kopieren von Daten aus bzw. nach Oracle die Eigenschaft „type“ des Datasets auf OracleTable fest. Die folgenden Eigenschaften werden unterstützt.

Eigenschaft Beschreibung Erforderlich
Typ Die Eigenschaft „type“ des Datasets muss auf OracleTable festgelegt werden. Ja
schema Name des Schemas. Quelle: Nein, Senke: Ja
Tisch Name der Tabelle/Ansicht. Quelle: Nein, Senke: Ja
Tabellenname Name der Tabelle/Ansicht mit Schema. Diese Eigenschaft wird aus Gründen der Abwärtskompatibilität weiterhin unterstützt. Verwenden Sie für eine neue Workload schema und table. Quelle: Nein, Senke: Ja

Beispiel:

{
    "name": "OracleDataset",
    "properties":
    {
        "type": "OracleTable",
        "schema": [],
        "typeProperties": {
            "schema": "<schema_name>",
            "table": "<table_name>"
        },
        "linkedServiceName": {
            "referenceName": "<Oracle linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Eigenschaften der Kopieraktivität

Dieser Abschnitt enthält eine Liste der Eigenschaften, die von der Oracle-Quelle und -Senke unterstützt werden. Eine vollständige Liste der verfügbaren Abschnitte und Eigenschaften zum Definieren von Aktivitäten finden Sie unter Pipelines.

Oracle als Quelle

Tipp

Weitere Informationen zum effizienten Laden von Daten aus Oracle mittels Datenpartitionierung finden Sie unter Parallele Kopie von Oracle.

Legen Sie zum Kopieren von Daten aus Oracle den Quelltyp in der Kopieraktivität auf OracleSource fest. Die folgenden Eigenschaften werden im Abschnitt source der Kopieraktivität unterstützt.

Eigenschaft Beschreibung Erforderlich
Typ Die Eigenschaft „type“ der Quelle der Kopieraktivität muss auf OracleSource festgelegt werden. Ja
oracleReaderQuery Verwendet die benutzerdefinierte SQL-Abfrage zum Lesen von Daten. z. B. "SELECT * FROM MyTable". Beachten Sie, dass die Abfrage nicht mit einem Semikolon (;)) enden soll.
Wenn Sie partitioniertes Laden aktivieren, müssen Sie die entsprechenden integrierten Partitionsparameter in Ihre Abfrage integrieren. Beispiele finden Sie im Abschnitt Paralleles Kopieren aus Oracle.
Nein
DezimalInGanzzahlUmwandeln Der Oracle NUMBER-Typ mit null oder nicht angegebener Skalierung wird in die entsprechende ganze Zahl konvertiert. Zulässige Werte sind true und false (Standard).
Wenn Sie Oracle Version 2.0 verwenden, darf diese Eigenschaft nur festgelegt werden, wenn supportV1DataTypes true ist.
Nein
Partitionierungsoptionen Gibt die Datenpartitionierungsoptionen an, mit denen Daten aus Oracle geladen werden.
Zulässige Werte sind: None (Standard), PhysicalPartitionsOfTable und DynamicRange.
Wenn eine Partitionsoption aktiviert ist (d. h. nicht None), wird der Grad an Parallelität zum gleichzeitigen Laden von Daten aus einer Oracle-Datenbank durch die Einstellung parallelCopies für die Kopieraktivität gesteuert.
Nein
Partitionseinstellungen Geben Sie die Gruppe der Einstellungen für die Datenpartitionierung an.
Verwenden Sie diese Option, wenn die Partitionsoption nicht None lautet.
Nein
partitionNames Die Liste der physischen Partitionen, die kopiert werden müssen.
Verwenden Sie diese Option, wenn die Partitionsoption PhysicalPartitionsOfTable lautet. Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?AdfTabularPartitionName in die WHERE-Klausel. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus Oracle.
Nein
partitionColumnName Geben Sie den Namen der Quellspalte als Integer an, der von der Bereichspartitionierung für den parallelen Kopiervorgang verwendet wird. Ohne Angabe wird der Primärschlüssel der Tabelle automatisch erkannt und als Partitionsspalte verwendet.
Verwenden Sie diese Option, wenn die Partitionsoption DynamicRange lautet. Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?AdfRangePartitionColumnName in die WHERE-Klausel. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus Oracle.
Nein
Partition-Obergrenze Der Höchstwert der Partitionsspalte zum Herauskopieren von Daten.
Verwenden Sie diese Option, wenn die Partitionsoption DynamicRange lautet. Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?AdfRangePartitionUpbound in die WHERE-Klausel. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus Oracle.
Nein
partitionLowerBound Der Mindestwert der Partitionsspalte zum Herauskopieren von Daten.
Verwenden Sie diese Option, wenn die Partitionsoption DynamicRange lautet. Wenn Sie die Quelldaten mithilfe einer Abfrage abrufen, integrieren Sie ?AdfRangePartitionLowbound in die WHERE-Klausel. Ein Beispiel finden Sie im Abschnitt Paralleles Kopieren aus Oracle.
Nein
Zahlenpräzision Geben Sie die maximale Anzahl signifikanter Dezimalziffern an. Zulässige Werte liegen zwischen 1 und 256. Wird standardmäßig auf 256 zurückgesetzt, wenn nicht anders angegeben.
Diese Eigenschaft wird in Oracle Version 2.0 unterstützt. Gilt nur für NUMBER-Typen, die keine Präzision und keinen Umfang explizit in der Oracle-Datenbank definiert haben. Kann festgelegt werden, wenn supportV1DataTypes nicht true ist. Wenn Sie selbst gehostete Integrationslaufzeit verwenden, sollte die Version 5.56 oder höher sein.
Nein
Zahlenskala Geben Sie die Anzahl der Ziffern nach dem Dezimalkomma an. Zulässige Werte liegen zwischen 0 und 130 und müssen kleiner oder gleich der Genauigkeit sein. Bei fehlender Angabe standardmäßig 130
Diese Eigenschaft wird in Oracle Version 2.0 unterstützt. Gilt nur für NUMBER-Typen, die keine Präzision und keinen Umfang explizit in der Oracle-Datenbank definiert haben. Kann festgelegt werden, wenn supportV1DataTypes nicht true ist. Wenn Sie selbst gehostete Integrationslaufzeit verwenden, sollte die Version 5.56 oder höher sein.
Nein

Beispiel: Kopieren von Daten mit einer einfachen Abfrage ohne Partition

"activities":[
    {
        "name": "CopyFromOracle",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Oracle input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "OracleSource",
                "convertDecimalToInteger": false,
                "oracleReaderQuery": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Oracle als Senke

Legen Sie zum Kopieren von Daten in Oracle den Senkentyp in der Kopieraktivität auf OracleSink fest. Die folgenden Eigenschaften werden im Abschnitt sink der Kopieraktivität unterstützt.

Eigenschaft Beschreibung Erforderlich
Typ Die Eigenschaft „type“ der Senke der Kopieraktivität muss auf OracleSink festgelegt werden. Ja
writeBatchSize Fügt Daten in die SQL-Tabelle ein, wenn die Puffergröße writeBatchSize erreicht.
Zulässige Werte sind Integer-Werte (Anzahl der Zeilen).
Nein (Standardwert ist 10.000)
writeBatchTimeout Die Wartezeit für den Abschluss der Batcheinfügung, bevor ein Timeout auftritt.
Zulässige Werte sind Timespan-Werte. Beispiel: 00:30:00 (30 Minuten).
Nein
preCopyScript Geben Sie eine SQL-Abfrage an, die bei jeder Ausführung von der Kopieraktivität ausgeführt werden soll, bevor Daten in Oracle geschrieben werden. Sie können diese Eigenschaft nutzen, um die vorab geladenen Daten zu bereinigen. Nein
 maxConcurrentConnections Die Obergrenze gleichzeitiger Verbindungen mit dem Datenspeicher während der Aktivitätsausführung. Geben Sie diesen Wert nur an, wenn Sie die Anzahl der gleichzeitigen Verbindungen begrenzen möchten.  Nein

Beispiel:

"activities":[
    {
        "name": "CopyToOracle",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Oracle output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "OracleSink"
            }
        }
    }
]

Parallele Kopie von Oracle

Der Oracle-Connector stellt eine integrierte Datenpartitionierung zum parallelen Kopieren von Daten aus Oracle zur Verfügung. Die Datenpartitionierungsoptionen befinden sich auf der Registerkarte Quelle der Kopieraktivität.

Screenshot der Partitionierungsoptionen

Wenn Sie partitioniertes Kopieren aktivieren, führt der Dienst parallele Abfragen gegenüber Ihrer Oracle-Quelle aus, um Daten anhand von Partitionen zu laden. Der Parallelitätsgrad wird über die Einstellung parallelCopies der Kopieraktivität gesteuert. Wenn Sie z. B. parallelCopies auf vier einstellen, generiert der Dienst gleichzeitig vier Abfragen auf der Grundlage der von Ihnen angegebenen Partitionsoption und -einstellungen und führt sie aus, wobei jede Abfrage einen Teil der Daten aus Ihrer Oracle-Datenbank abruft.

Es wird empfohlen, das parallele Kopieren mit Datenpartitionierung zu aktivieren, vor allem, wenn Sie große Datenmengen aus Ihrer Oracle-Datenbank laden. Im Anschluss finden Sie empfohlene Konfigurationen für verschiedene Szenarien. Beim Kopieren von Daten in einen dateibasierten Datenspeicher wird empfohlen, mehrere Dateien in einen Ordner zu schreiben (nur den Ordnernamen anzugeben). In diesem Fall ist die Leistung besser als beim Schreiben in eine einzelne Datei.

Szenario Empfohlene Einstellungen
Vollständiges Laden aus einer großen Tabelle mit physischen Partitionen Partitionsoption: Physische Partitionen der Tabelle.

Während der Ausführung erkennt der Dienst automatisch die physischen Partitionen und kopiert Daten nach Partitionen.
Vollständiges Laden aus einer großen Tabelle ohne physische Partitionen, aber mit einer Integerspalte für die Datenpartitionierung Partitionsoptionen: Partition des dynamischen Bereichs
Partitionsspalte: Geben Sie die Spalte an, die zum Partitionieren von Daten verwendet wird. Ohne Angabe wird die Primärschlüsselspalte verwendet.
Laden einer großen Datenmenge unter Verwendung einer benutzerdefinierten Abfrage mit physischen Partitionen Partitionsoption: Physische Partitionen der Tabelle.
Abfrage: SELECT * FROM <TABLENAME> PARTITION("?AdfTabularPartitionName") WHERE <your_additional_where_clause>
Partitionsname: Geben Sie den/die Namen der Partition(en) an, aus denen Daten kopiert werden sollen. Wenn nicht angegeben, erkennt der Dienst automatisch die physischen Partitionen der Tabelle, die Sie im Oracle-Datensatz angegeben haben.

Während der Ausführung ersetzt der Dienst ?AdfTabularPartitionName durch den tatsächlichen Partitionsnamen und sendet ihn an Oracle.
Laden einer großen Datenmenge unter Verwendung einer benutzerdefinierten Abfrage ohne physische Partitionen, aber mit einer Integerspalte für die Datenpartitionierung Partitionsoptionen: Partition des dynamischen Bereichs
Abfrage: SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>
Partitionsspalte: Geben Sie die Spalte an, die zum Partitionieren von Daten verwendet wird. Die Partitionierung kann auf der Grundlage der Spalte mit dem Datentyp „Integer“ erfolgen.
Partition obere Grenze und Partition untere Grenze: Geben Sie an, ob Sie die Partitionsspalte filtern möchten, um nur Daten zwischen dem unteren und oberen Bereich abzurufen.

Während der Ausführung ersetzt der Dienst ?AdfRangePartitionColumnName, ?AdfRangePartitionUpbound und ?AdfRangePartitionLowbound durch die tatsächlichen Spaltennamen und Wertebereiche für jede Partition und sendet sie an Oracle.
Wenn z. B. für Ihre Partitionsspalte „ID“ die untere Grenze auf 1 und die obere Grenze auf 80 festgelegt ist und die Parallelkopie auf 4 eingestellt ist, ruft der Dienst Daten nach 4 Partitionen ab. Die ID-Bereiche sehen dann wie folgt aus: [1–20], [21–40], [41–60] und [61–80].

Tipp

Beim Kopieren von Daten aus einer nicht partitionierten Tabelle können Sie die Partitionsoption „Dynamischer Bereich“ verwenden, um eine Partitionierung auf Grundlage einer ganzzahlige Spalte durchzuführen. Wenn die Quelldaten keinen solchen Spaltentyp enthalten, können Sie mithilfe der ORA_HASH-Funktion in der Quellabfrage eine Spalte generieren und diese als Partitionsspalte verwenden.

Beispiel: Abfrage mit physischer Partition

"source": {
    "type": "OracleSource",
    "query": "SELECT * FROM <TABLENAME> PARTITION(\"?AdfTabularPartitionName\") WHERE <your_additional_where_clause>",
    "partitionOption": "PhysicalPartitionsOfTable",
    "partitionSettings": {
        "partitionNames": [
            "<partitionA_name>",
            "<partitionB_name>"
        ]
    }
}

Beispiel: Abfrage mit dynamischer Bereichspartition

"source": {
    "type": "OracleSource",
    "query": "SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>",
    "partitionOption": "DynamicRange",
    "partitionSettings": {
        "partitionColumnName": "<partition_column_name>",
        "partitionUpperBound": "<upper_value_of_partition_column>",
        "partitionLowerBound": "<lower_value_of_partition_column>"
    }
}

Datentypzuordnung für Oracle

Wenn Sie Daten von und nach Oracle kopieren, werden die folgenden vorläufigen Datentypzuordnungen innerhalb des Dienstes verwendet. Weitere Informationen dazu, wie die Kopieraktivität das Quellschema und den Datentyp zur Senke zuordnet, finden Sie unter Schema- und Datentypzuordnungen.

Oracle-Datentyp Zwischendienstdatentyp (für Version 2.0) Zwischendienstdatentyp (für Version 1.0)
BFILE Byte[] Byte[]
BINARY_FLOAT Ledig Ledig
BINARY_DOUBLE Double Double
BLOB Byte[] Byte[]
CHAR Schnur Schnur
CLOB Schnur Schnur
Datum Datum/Uhrzeit Datum/Uhrzeit
FLOAT (P < 16) Double Double
FLOAT (P >= 16) Dezimalzahl Double
INTERVALL VON JAHR ZU MONAT Int64 Schnur
Intervall von Tag bis Sekunde Zeitspanne Schnur
LONG Schnur Schnur
LONG RAW Byte[] Byte[]
NCHAR Schnur Schnur
NCLOB Schnur Schnur
NUMBER (p,s) Int16, Int32, Int64, Single, Double, Decimal Dezimal, Zeichenfolge (wenn p > 28)
NUMBER ohne Genauigkeit und Dezimalstellen Dezimal (256,130) Double
NVARCHAR2 Schnur Schnur
RAW Byte[] Byte[]
timestamp Datum/Uhrzeit Datum/Uhrzeit
TIMESTAMP MIT LOKALER ZEITZONE Datum/Uhrzeit Datum/Uhrzeit
ZEITSTEMPEL MIT ZEITZONE DateTimeOffset Datum/Uhrzeit
VARCHAR2 Schnur Schnur
XMLTYPE Schnur Schnur

NUMBER(p,s) wird je nach Präzision (p) und Skalierung (s) dem entsprechenden Interimdatentyp der Version 2.0 zugeordnet.

Datentyp der Zwischendienstleistung Zustand
Int16 scale <= 0 AND (precision - scale) < 5
Int32 Skala <= 0 UND 5 <= (Präzision - Skala) < 10
Int64 scale <= 0 AND 10 <= (Precision - scale) < 19
Ledig Genauigkeit < 8 UND ((Skalierung <= 0 UND (Genauigkeit - Skalierung) <= 38) ODER (Skalierung > 0 UND Skalierung <= 44))
Dezimalzahl Genauigkeit >= 16
Double Wenn keine der oben genannten Bedingungen erfüllt ist.

Eigenschaften der Lookup-Aktivität

Ausführliche Informationen zu den Eigenschaften finden Sie unter Lookup-Aktivität.

Upgrade des Oracle-Connectors

Die folgenden Schritte helfen Ihnen beim Upgrade des Oracle-Connectors:

  1. Wählen Sie auf der Seite "Verknüpften Dienst bearbeiten " die Option 2.0 unter "Version " aus, und konfigurieren Sie den verknüpften Dienst, indem Sie auf die Verknüpften Diensteigenschaften Version 2.0 verweisen.

    Geben Sie für die Authentifizierungseigenschaften einschließlich Benutzername und Kennwort die ursprünglichen Werte in den entsprechenden Feldern in Version 2.0 an. Andere Verbindungseigenschaften wie Host, Port und Oracle Service Name/Oracle SID in Version 1.0 sind jetzt Parameter der server Eigenschaft in Version 2.0.

    Wenn Sie z. B. den verknüpften Dienst version 1.0 wie unten dargestellt konfigurieren:

    Screenshot des verknüpften Diensts version 1.0.

    { 
        "name": "OracleLinkedService", 
        "properties": { 
            "type": "Oracle", 
            "typeProperties": { 
                "connectionString": "host=oraclesample.com;port=1521;servicename=db1" 
            }, 
            "connectVia": { 
                "referenceName": "<name of Integration Runtime>", 
                "type": "IntegrationRuntimeReference" 
            } 
        } 
    }
    

    Die identische, mit Version 2.0 verknüpfte Dienstkonfiguration mit Easy Connect (Plus) Naming lautet:

    Screenshot: Verknüpfter Dienst mit einfacher Konnektorbenennung (Plus).

    { 
        "name": "OracleLinkedService", 
        "properties": { 
            "type": "Oracle", 
            "version": "2.0", 
            "typeProperties": { 
                "server": "oraclesample.com:1521/db1",  
                "username": "<user name>",  
                "password": "<password>",  
                "authenticationType": "<authentication type>" 
            }, 
            "connectVia": { 
                "referenceName": "<name of Integration Runtime>", 
                "type": "IntegrationRuntimeReference" 
            } 
        } 
    } 
    

    Die identische, mit Version 2.0 verknüpfte Dienstkonfiguration mit Connectordeskriptor lautet:

    Screenshot des verknüpften Diensts mit Connectordeskriptor.

    { 
        "name": "OracleLinkedService", 
        "properties": { 
            "type": "Oracle", 
            "version": "2.0", 
            "typeProperties": { 
                "server": "(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST= oraclesample.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=db1)))",  
                "username": "<user name>",  
                "password": "<password>",  
                "authenticationType": "<authentication type>" 
            }, 
            "connectVia": { 
                "referenceName": "<name of Integration Runtime>", 
                "type": "IntegrationRuntimeReference" 
            } 
        } 
    } 
    

    Tipp

    Azure Key Vault wird für die server Eigenschaft unterstützt. Sie können den verknüpften Dienst-JSON bearbeiten, um den Azure Key Vault-Verweis hinzuzufügen, wie unten gezeigt:
    Screenshot der Verwendung von Azure Key Vault auf dem Server.

    Beachten Sie dabei Folgendes:

    • Wenn Sie Oracle Service Name in Version 1.0 verwenden, können Sie easy Connect (Plus) Naming or Connector Descriptor als Serverformat in Version 2.0 verwenden.

    • Wenn Sie Oracle SID in Version 1.0 verwenden, müssen Sie Connector-Deskriptor als Serverformat in Version 2.0 verwenden.

    • Für einige zusätzliche Verbindungseigenschaften in Version 1.0 stellen wir alternative Eigenschaften oder Parameter in der server Eigenschaft in Version 2.0 bereit. Sie können auf die nachstehende Tabelle verweisen, um die Version 1.0-Eigenschaften zu aktualisieren.

      Version 1.0 Version 2.0
      Verschlüsselungsmethode PROTOCOL (Parameter in server)
      tnsnamesfile TNS_ADMIN (Umgebungsvariable, die in der selbst gehosteten Integrationslaufzeit unterstützt wird)
      Servername server
      Bulkload aktivieren
      Wert: 1, 0
      enableBulkLoad
      Wert: wahr, falsch
      fetchtswtzastimestamp
      Wert: 1, 0
      fetchTswtzAsTimestamp
      Wert: wahr, falsch
      alternierende Server DESCRIPTION_LIST (Parameter in server)
      arraysize fetchSize
      Zwischengespeicherte Cursorbegrenzung statementCacheSize
      connectionretrycount RETRY_COUNT (Parameter in server)
      initializationstring initializationString
      Anmeldezeitschwelle CONNECT_TIMEOUT (Parameter in server)
      Krypto-Protokollversion SSL_VERSION (Parameter in server)
      truststore WALLET_LOCATION (Parameter in server)

      Wenn Sie beispielsweise in Version 1.0 verwenden alternateservers , können Sie den DESCRIPTION_LIST Parameter in der Servereigenschaft in Version 2.0 festlegen:

      Mit Version 1.0 verknüpfter Dienst mit alternateservers:

      {
          "name": "OracleV1",
          "properties": {
              "type": "Oracle",
              "typeProperties": {
                  "connectionString": "host=oraclesample.com;port=1521;servicename=db1;alternateservers=(HostName= oraclesample2.com:PortNumber=1521:SID=db2,HostName=255.201.11.24:PortNumber=1522:ServiceName=db3)"
              }
          }
      }
      

      Identischer, mit Version 2.0 verknüpfter Dienst mit dem Parameter DESCRIPTION_LIST im Connectordeskriptor:

      {
          "name": "OracleV2",
          "properties": {
              "type": "Oracle",
              "version": "2.0",
              "typeProperties": {
                  "server": "(DESCRIPTION_LIST=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraclesample.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=db1)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oraclesample2.com)(PORT=1521))(CONNECT_DATA=(SID=db2)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=255.201.11.24)(PORT=1522))(CONNECT_DATA=(SERVICE_NAME=db3))))",
                  "username": "<user name>",  
                  "password": "<password>",  
                  "authenticationType": "<authentication type>" 
              }
          }
      }
      
  2. Die Datentypzuordnung für die Oracle-verknüpfte Dienstversion 2.0 unterscheidet sich von der für die Version 1.0. Informationen zur neuesten Datentypzuordnung finden Sie unter "Datentypzuordnung für Oracle".

    Eine zusätzliche Verbindungseigenschaft supportV1DataTypes in Version 2.0 kann Upgradeprobleme verringern, die durch Änderungen des Datentyps verursacht werden. Durch Festlegen dieser Eigenschaft wird true sichergestellt, dass der Datentyp in Version 2.0 mit Version 1.0 konsistent bleibt.

Unterschiede zwischen Oracle Version 2.0 und Version 1.0

Die Oracle Connector Version 2.0 bietet neue Funktionen und ist mit den meisten Features von Version 1.0 kompatibel. Die folgende Tabelle zeigt die Featureunterschiede zwischen Version 2.0 und Version 1.0.

Version 2.0 Version 1.0
Die folgenden Zuordnungen werden von Oracle-Datentypen zu Zwischendienstdatentypen verwendet, die intern vom Dienst verwendet werden.

NUMBER(p;s) -> Int16, Int32, Int64, Single, Double, Decimal
FLOAT(p)-> Double oder Decimal, abhängig von der Präzision
ZAHL -> Dezimalzahl
TIMESTAMP MIT ZEITZONE:> DateTimeOffset
INTERVALL JAHR BIS MONAT -> Int64
INTERVALL VON TAG BIS SEKUNDE -> TimeSpan
Die folgenden Zuordnungen werden von Oracle-Datentypen zu Zwischendienstdatentypen verwendet, die intern vom Dienst verwendet werden.

ZAHL(p;s) -> Dezimalzahl oder Zeichenfolge basierend auf ihrer Genauigkeit
FLOAT(p)-> Double
ZAHL -> Doppel
TIMESTAMP MIT ZEITZONE -> DateTime
INTERVALL JAHR BIS MONAT -> String
INTERVAL DAY TO SECOND -> String
Unterstützen Sie die Funktion convertDecimalToInteger in der Kopierquelle, wenn supportV1DataTypes auf true gesetzt ist. Unterstützung von convertDecimalToInteger in der Kopierquelle. 
Die Verwendung ? als Platzhalter für Skriptaktivitätsabfrageparameter wird nicht unterstützt. Sie können den benannten Parameter (z :paramA. B. ) oder den Positionsparameter (z :1. B. ) als Ersatz verwenden. Unterstützung der Verwendung ? als Platzhalter für Skriptaktivitätsabfrageparameter. 
Unterstützt TLS 1.3. TLS 1.3 wird nicht unterstützt.
Bidirektionale TLS/SSL mit Oracle SSO Wallet wird unterstützt. Weitere Informationen finden Sie in diesem Artikel. Bidirektionale TLS/SSL mit Oracle Wallet wird nicht unterstützt.