HiveBrain v1.2.0
Get Started
← Back to all entries
snippetMinor

How to configure connection accessing Sybase Anywhere from Sybase IQ via ODBC on Linux

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
odbcsybaseconfigureanywherevialinuxhowfromaccessingconnection

Problem

I'm trying to access an ASA16 server from IQ16 via ODBC driver. Both servers are installed on the same Linux box.

I've installed unixodbc-bin and added a file .odbc.init into home of user running the databases:

[mes_input]
Driver=/opt/sqlanywhere16/lib64/libdbodbc16_r.so
uid=dba
pwd=SQL
EngineName=mes_input
CommLinks=tcpip(host=127.0.0.1;port=49152)
AutoStop=no
DatabaseName=mes_input


The ASA is running on 49152 on that box; IQ is running default 2638.

Also I've added an entry into interfaces file locking like that:

mes_input
        master tcp ether myserver 49152
        query tcp ether myserver 49152


Back on IQ I can add via Sybase Central the remote server as well as tables from this box. Also testing the connection and is showing no error.

But when I'm now trying to copy some data from ASA via e.g.

INSERT locale_table LOCATION 'mes_input.mes_input' 'SELECT * FROM table'


I'm getting:

Connectivity libraries cannot be found (check your dynamic library
search path).  Selects from attached databases are not possible without
these libraries.  
-- (hqmlib/hqm_cpm.cxx 146)
SQLCODE=-1003005, ODBC 3-Status="HY000"
Zeile 1, Spalte 1


Something I've missed or missconfigured?

Solution

Checked official documentation for this error and could see it as below:

Source the SAP IQ setup scripts using the same user that starts the
SAP IQ server.

This will set the LD_LIBRARY_PATH and other important environment
variables.

The error could be happening due to not setting/wrongful setting of appropriate environment variables on the host on which SAP IQ is running.

You need to set the environment variables on Linux Box.

You may do below for setting these variables:

Change to the SAP IQ parent installation directory and execute one of the following:
For the tcsh or C (csh) shell, enter:

source ./IQ.csh


For the Korn (ksh), Bash, or Bourne (sh) shells, enter:

source ./IQ.sh


Hope this helps.

Code Snippets

source ./IQ.csh
source ./IQ.sh

Context

StackExchange Database Administrators Q#64486, answer score: 2

Revisions (0)

No revisions yet.