Quell-Connector für Oracle¶
Diese Anleitung beschreibt, wie Sie digna für die Verbindung zur Oracle Database über ODBC konfigurieren, und zwar mit einer DSN-losen Verbindungszeichenfolge.
Die digna-Seite der Einrichtung ist für jede Technologie gleich — wo Verbindungen angelegt werden, wie Eigenschaftswerte verschlüsselt werden, wie eine Verbindung getestet wird und was die Profiling-Modi bedeuten. Das ist in der Übersicht über Datenbankverbindungen beschrieben. Diese Seite behandelt, was für Oracle spezifisch ist.
1. ODBC-Treiber installieren¶
Der Oracle-ODBC-Treiber ist Teil des Oracle Client (das Instant-Client-Paket „ODBC“ genügt). Installieren Sie ihn auf dem Rechner, auf dem das digna-Backend läuft, und folgen Sie dabei der offiziellen Installationsanleitung des Herstellers.
Der Treiber registriert sich als Oracle in <OracleHomeName> — zum Beispiel Oracle in OraDB21Home1 oder Oracle in instantclient_21_13. Der Home-Name unterscheidet sich je nach Installation, lesen Sie den genauen Namen daher auf Ihrem Host ab, wie unter ODBC-Treiber auf dem digna-Host installieren beschrieben.
2. ODBC-Eigenschaften¶
Ein Beispiel, keine Spezifikation
Der folgende Satz ist eine Kombination, von der bekannt ist, dass sie funktioniert. Die Eigenschaften gehören zum Oracle-ODBC-Treiber, daher unterscheiden sich ihre Namen, Standardwerte und zulässigen Werte zwischen Client-Versionen, und insbesondere der Treibername hängt vom Oracle-Home auf Ihrem Host ab. Nehmen Sie dies als Ausgangspunkt und prüfen Sie die Dokumentation der von Ihnen installierten Client-Version.
Fügen Sie im Bildschirm Add DB Connection die folgenden Eigenschaften hinzu:
| Schlüssel | Beispielwert | Hinweise |
|---|---|---|
Driver | Oracle in OraDB21Home1 | Muss dem auf dem digna-Host registrierten Treibernamen entsprechen |
DBQ | (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db.example.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=digna_source_db))) | Die Datenbank, zu der verbunden wird — siehe unten |
UID | DIGNA_SOURCE_USER | Datenbankbenutzer |
PWD | <password> | Encrypted ankreuzen |
Die resultierende Verbindungszeichenfolge sieht so aus:
Driver=Oracle in OraDB21Home1;DBQ=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db.example.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=digna_source_db)));UID=DIGNA_SOURCE_USER;PWD=<password>
Der Wert von DBQ¶
DBQ akzeptiert drei Formen. Für digna sind sie gleichwertig; sie unterscheiden sich darin, was auf dem digna-Host konfiguriert sein muss:
| Form | Beispiel | Erfordert |
|---|---|---|
| Vollständiger Connect-Deskriptor | (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=db.example.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=digna_source_db))) | Nichts — alles steht in der Eigenschaft. Empfohlen |
| TNS-Alias | DIGNA_SOURCE | Der Alias muss in der tnsnames.ora des Oracle Client auf dem digna-Host vorhanden sein |
| Easy Connect | db.example.com:1521/digna_source_db | Einen Oracle Client, der Easy Connect unterstützt (12c und später) |
Bevorzugen Sie den vollständigen Deskriptor
Ein TNS-Alias verlagert die halbe Verbindungsdefinition in eine Datei auf dem digna-Host, wo sie leicht vergessen wird, wenn der Host neu aufgesetzt oder digna verschoben wird. Der vollständige Deskriptor hält die Verbindung in sich geschlossen — und genau darum geht es bei einer DSN-losen Einrichtung.
Beachten Sie: Die Klammern eines Deskriptors sind innerhalb einer Verbindungszeichenfolge unproblematisch; enthält Ihr Passwort jedoch ;, setzen Sie es in geschweifte Klammern: PWD={p@ss;word}.
3. digna-Konfiguration¶
Geben Sie im Bildschirm Add DB Connection Folgendes an:
Name: Name of the connection. This is used for referencing the connection in other screens.
Technology: Oracle
Profiling Mode: Standard, Permanent or Session
Work Schema: Schema for the work tables of "Permanent" profiling, e.g. "DIGNA_WORK"
4. Hinweise zu Oracle¶
- Schemata sind Benutzer. digna listet Oracle-Benutzer als Schemata auf, das Quellschema ist also der Eigentümer der Tabellen — im obigen Beispiel
DIGNA_SOURCE_USER. Der Verbindungsbenutzer benötigtSELECTauf diese Tabellen, entweder direkt oder über eine Rolle. - Eine Verbindung sieht eine Datenbank. Der Katalog, den digna anbietet, ist die Datenbank, an der die Verbindung hängt;
DBQentscheidet also, welcher Service und damit welche Datenbank profiliert wird. - Bezeichner sind nach dem Quoten case-sensitiv. digna quotet die Namen, die es aus dem Data Dictionary liest — und das ist, was Oracle speichert: Großbuchstaben für nicht gequotete Objekte.
- Profiling-Modi. Permanent legt die Arbeitstabellen im Work Schema an, der Benutzer braucht dort also
CREATE TABLEund eine Quota auf dem Tablespace. Session verwendet eine private temporäre Tabelle (ORA$PTT_…, Oracle 18c und später) und rührt das Work Schema nicht an. Standard benötigt nur Lesezugriff.
5. Treiber überprüfen (optional)¶
Für eine DSN-lose Verbindung ist es nicht erforderlich, eine ODBC-Datenquelle einzurichten, aber der Dialog des Treibers ist ein bequemer Weg, um vor der Eingabe in digna zu bestätigen, dass der Oracle Client, der Servicename und Ihre Anmeldedaten funktionieren.
Schritt 1¶

Der hier angebotene TNS Service Name stammt aus der tnsnames.ora Ihrer Oracle-Client-Installation — dort ist der Alias und mit ihm Host, Port und Servicename definiert. In digna können Sie den Alias als DBQ verwenden oder stattdessen den vollständigen Deskriptor.
Schritt 2 – Verbindung testen¶
Klicken Sie auf die Schaltfläche Test Connection.

Geben Sie das Passwort an und klicken Sie auf die Schaltfläche OK.

Eine Erfolgsmeldung bestätigt, dass der Treiber und die Anmeldedaten funktionieren.