Michael Schröpl: Oracle-Datenbankzugriffsprobleme mit Coldfusion unter Linux

Beitrag lesen

Hi,

Coldfusion greift via ODBC auf eine entfernte OracleDB zu (zumindest sollte er das).
Klappt aber nicht. Stattdessen kommt die Fehlermeldung:
ODBC Error Code = IM003 (Specified driver could not be loaded)

hm ... ohne jetzt wirklich die genannten Produkte im Deatil zu verstehen:
Wie funktioniert denn Deine ODBC-Installation?
Ich stelle mir ODBC als API vor, die einem Anwendungsprogramm über
einheitliche Funktionen den Zugriff auf verschiedene Datenbanken erlaubt

  • d. h. es muß ein Treiber her, der diese einheitlichen API-Funktionen
    auf die herstellerspezifischen APIs der konkreten Datenbank abbildet.
    (Und zwar für jedes Datenbankprodukt ein eigener Treiber.)

Obwohl alles korrekt konfiguriert ist.
(mit andere Datenbanken wie PostgreSQL funktioniert es tadellos).

Das ist ja dann offenbar ein anderer Treiber innerhalb Deiner ODBC-
Installation - und der funktioniert eben.

Die gleiche Konstellation unter Redhat Linux 7.2 arbeitet einwandfrei.

Wer hat dort ODBC wie installiert? Setzt Du dieselben Treiber unter 7.2
und 7.3 ein? Erlaubt der Hersteller (Oracle), daß Du das tust, oder mußt
Du Dir von Oracle für Linux 7.3 einen angepaßten Treiber holen?

Weder auf der Macromedia-Seite noch bei www.cfml.de fand sich ein
brauchbarer Hinweis. Die Resultate von Google konnte man ebenfalls
vergessen.

Ich vermute Dein Problem nicht vor, sondern hinter der ODBC-Schnitt-
stelle. Denn Deine Client-Schicht hat mit dieser ja ganz normale kom-
munizieren können und eine vernünftige Fehlermeldung erhalten.
Ich würde Google also nach der Kombination aus ODBC und Oracle fragen.

Oder der Oracle-Client hat ein Problem. Allerdings funktioniert
sqlplus einwandfrei auf diesem Server. Deshalb nehme ich an das
Problem liegt wirklich bei Coldfusion.

Ich vermute, das Problem liegt in der Verbindungsschicht zwischen
beiden - eben in Deiner ODBC-Installation.
Daß sqlplus funktioniert, spricht dafür, daß der Oracle-Teil in sich
korrekt ist (sofern Du den Oracle-Treiber für ODBC davon ausnimmst).

Wenn sich was findet, dann werde ich die Lösung hier posten als
Antwort auf meine eigene Frage, damit alle was davon haben. :-)

Die erste Maßnahme, die ich ergreifen würde, wäre in diesem Fall,
die Fehlermeldung wörtlich zu nehmen, also mir anzusehen, wie man in
dieses ODBC einen Oracle-kompatiblen Treiber hinein bekommt.

Viele Grüße
      Michael