Database

Resolver el error de SAS/ACCESS to Oracle: "Image SASORA found but not loadable"

Simon 29/12/2017 1 Aufrufe

La integración de SAS© con bases de datos Oracle es una configuración común en entornos de inteligencia de negocio (BI). Sin embargo, al implementar una nueva arquitectura (especialmente en servidores Windows de 64 bits), a veces la conexión falla a pesar de una configuración aparentemente correcta de las variables de entorno.

Un caso clásico es el error "Image SASORA found but not loadable", que ocurre incluso cuando el cliente de Oracle parece funcionar desde la línea de comandos.

Illustration

El Síntoma

Al ejecutar una instrucción LIBNAME para conectarse a Oracle (ya sea a través de SAS© Enterprise Guide, DI Studio o Base SAS©), el registro muestra los siguientes errores:

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

Sin embargo, las pruebas preliminares parecen ser positivas:

  1. La conexión a la base de datos funciona a través de la línea de comandos (SQL*Plus o tnsping).

  2. Las variables de entorno (ORACLE_HOME, PATH, TNS_ADMIN) están definidas correctamente.

  3. Se han concedido permisos de lectura y ejecución en la carpeta de Oracle.

Análisis del Problema

Si bien la configuración de las rutas (PATH) es esencial, este mensaje de error específico ("found but not loadable") a menudo indica una incompatibilidad binaria o un problema de versión entre el sistema operativo, el cliente de Oracle y el ejecutable de SAS©.

El módulo SAS©/ACCESS intenta cargar las DLL del cliente de Oracle (como oci.dll). Si SAS© encuentra la imagen (el archivo existe) pero no puede cargarla, significa que el sistema operativo no puede interactuar correctamente entre los dos componentes.

En un entorno de Windows Server 2008 R2 (64 bits) o más reciente, este problema es frecuentemente causado por el uso de una versión obsoleta o sin parches del cliente Oracle 10g (por ejemplo, la versión 10.2.0.3). Esta versión específica tiene incompatibilidades conocidas con la arquitectura de 64 bits de Windows Server 2008 R2, lo que hace que los controladores sean invisibles o inutilizables para aplicaciones de terceros como SAS©, aunque respondan a los comandos nativos de Oracle.

La Solución: Actualizar el Cliente de Oracle

No es un problema de configuración de SAS©, sino de compatibilidad de la infraestructura de software.

Para resolver este problema, siga estos pasos:

  1. Verifique la versión exacta de su cliente Oracle instalado en el servidor SAS© (a través del comando sqlplus -v o el registro).

  2. Aplique el último "Patchset" disponible para su versión del cliente Oracle.

    • Ejemplo: Si está utilizando el cliente 10g versión 10.2.0.3, debe aplicar imperativamente el parche para actualizar a la versión 10.2.0.5 (o superior).

  3. Reinicie los servicios de SAS© (o el servidor) para asegurarse de que las nuevas DLL del sistema se tengan en cuenta.

Una vez que el cliente de Oracle se actualice a una versión certificada compatible con su sistema operativo de servidor, la instrucción LIBNAME debería ejecutarse con éxito sin ninguna modificación en el código SAS©.