Showing results for 
Search instead for 
Do you mean 

Using Oracle's instaclient with GeoMedia applicaitons

by Moderator ‎02-17-2016 02:30 PM - edited ‎04-07-2016 05:57 AM (679 Views)

Symptoms

ORA-01019 error when trying to run Database Utilities with instaclient.

Diagnosis

GeoMedia's Oracle data server uses OCI for database connections and this library is present in Oracle's instaclient.  This means GeoMedia applications can support instaclient as long as you use the easy connect method for the host string.  Easy connect is in the format:

 

user/password@serverSmiley Tongueort/servicename  

 

If the listener port is the default of 1521 then you can shorten this to:

 

user/password@server/service

 

While GeoMedia works here, Database Utilities will not.  Database Utilities is a VB based app that utilizes ADO, OLE, and a little ODBC, it does not use OCI.  If you try to run  Database Utilities with instaclient, you will get the ORA-01019 error.  This is due to program requirements on missing Oracle libraries. 

 

Solution

The easiest solution is to install the standard Oracle runtime client but if you have to use instaclient, there is a workaround. 

 

  1. After installing the instaclient, you install ODAC in to the instaclient home directory. 
  2. The first error is ORA-01019:  In this case, the Microsoft libraries are looking for the %ORACLE_HOME%\oracore directory for time zone information.  You copy ORACORE from an existing runtime client to the instaclient home directory and that got past the ORA-01019 error. 
  3. The error now changes to ORA-12705 which is caused by the process looking for NLS data files in the %ORACLE_HOME%\RDBMS\mesg\diaus.msb file.  Again, you copy this file from an existing runtime client and put it in the same location in the instaclient directory. 
  4. The same ORA-12705 error occurs but now on a different file, this time the missing file is %ORACLE_HOME\nls\data\lx1boot.nlb.  Again, you copy this (directory structure and all) to the instaclient directory.
  5. Another ORA-12705 error occurs, but this time referencing %ORACLE_HOME%\bin\oraspawn.dll which is also missing from instaclient.  After copying that file to the instaclient, all the files necessary to run are located and Database Utilities functions correctly using the easy connect method for the host string.

 The bottom line is that if you copy all the components required from a standard client to the runtime client, Database Utilities will run with instaclient.

Contributors