Database

Behebung des SAS/ACCESS to Oracle-Fehlers: "Image SASORA found but not loadable"

Simon 9 views

Die Integration von SAS© mit Oracle-Datenbanken ist eine gängige Konfiguration in Business-Intelligence-Umgebungen (BI). Bei der Einrichtung einer neuen Architektur (insbesondere auf 64-Bit-Windows-Servern) kann es jedoch vorkommen, dass die Verbindung trotz einer scheinbar korrekten Konfiguration der Umgebungsvariablen fehlschlägt.

Ein klassischer Fall betrifft den Fehler "Image SASORA found but not loadable", der auftritt, obwohl der Oracle-Client anscheinend über die Befehlszeile funktioniert.

Behebung des SAS/ACCESS to Oracle-Fehlers: "Image SASORA found but not loadable" -

Das Symptom

Bei der Ausführung einer Anweisung LIBNAME zur Verbindung mit Oracle (sei es über SAS© Enterprise Guide, DI Studio oder Base SAS©) zeigt das Protokoll die folgenden Fehler an:

ERROR: The SAS/ACCESS Interface to ORACLE cannot be loaded. ERROR: Image SASORA found but not loadable. ERROR: Error in the LIBNAME statement.

Dennoch scheinen die vorläufigen Tests positiv zu sein:

  1. Die Verbindung zur Datenbank funktioniert über die Eingabeaufforderung (SQL*Plus oder tnsping).

  2. Die Umgebungsvariablen (ORACLE_HOME, PATH, TNS_ADMIN) sind korrekt definiert.

  3. Die Lese- und Ausführungsberechtigungen für den Oracle-Ordner sind erteilt.

Die Problemanalyse

Obwohl die Pfadkonfiguration (PATH) entscheidend ist, deutet diese spezielle Fehlermeldung ("found but not loadable") oft auf eine binäre Inkompatibilität oder ein Versionsproblem zwischen dem Betriebssystem, dem Oracle-Client und der SAS©-Anwendung hin.

Das SAS©/ACCESS-Modul versucht, die DLLs des Oracle-Clients (wie oci.dll) zu laden. Wenn SAS© das Image findet (die Datei existiert), es aber nicht laden kann, bedeutet dies, dass das Betriebssystem die beiden Komponenten nicht korrekt verbinden kann.

In einer Umgebung mit Windows Server 2008 R2 (64-Bit) oder neuer wird dieses Problem häufig durch die Verwendung einer veralteten oder ungepatchten Version des Oracle 10g-Clients (z. B. Version 10.2.0.3) verursacht. Diese spezielle Version weist bekannte Inkompatibilitäten mit der 64-Bit-Architektur von Windows Server 2008 R2 auf, wodurch die Treiber für Drittanbieteranwendungen wie SAS© unsichtbar oder unbrauchbar werden, obwohl sie auf native Oracle-Befehle reagieren.

Die Lösung: Aktualisierung des Oracle-Clients

Dies ist kein SAS©-Konfigurationsproblem, sondern ein Problem der Software-Infrastrukturkompatibilität.

Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus:

  1. Überprüfen Sie die genaue Version Ihres auf dem SAS©-Server installierten Oracle-Clients (über den Befehl sqlplus -v oder die Registrierung).

  2. Installieren Sie das neueste "Patchset", das für Ihre Version des Oracle-Clients verfügbar ist.

    • Beispiel: Wenn Sie den 10g-Client Version 10.2.0.3 verwenden, müssen Sie zwingend den Patch anwenden, um auf Version 10.2.0.5 (oder höher) zu aktualisieren.

  3. Starten Sie neu die SAS©-Dienste (oder den Server), um sicherzustellen, dass die neuen System-DLLs berücksichtigt werden.

Sobald der Oracle-Client auf eine zertifizierte, mit Ihrem Server-Betriebssystem kompatible Version aktualisiert wurde, sollte die Anweisung LIBNAME ohne Änderung des SAS©-Codes erfolgreich ausgeführt werden.