Sybase and Oracle errors

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

Sybase and Oracle errors

Post by drostnu »

hello all,
my first post, i hope someone can help me...

im running datastage 7.5.1a in Linux, and there is no problem so far, but i start to do some tests, and its seems i cant connect to either a Sybase or a Oracle database i get these two errors.

"ds_loadlibrary: error in dlopen of sybaseoc.so - libsybdb.so: cannot open shared object file: No such file or directory"

"ds_loadlibrary: error in dlopen of oraoci9.so - libclntsh.so: cannot open shared object file: No such file or directory"


i dont really understand whats happening

Sybase is in another server : ip = 10.172.10.26
and Oracle is in the same server (127.0.0.1)

so please, help me.

i know i have to setup dsenv variables, but i just dont know how...

im kind of a noob in linux, so please help me...

so please help me.

Regards,

Diego/[/b]
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

Welcome! You'll need to go to the DS Engine home directory:

cd `cat /.dshome`

and edit the dsenv file there. Add the ORACLE_HOME environment variable and point it at the true Oracle client directory. Update the SH_LIBS path to include the Oracle libraries paths as well.

As for Sybase, you'll need to do something similar, like set SYBASE environment variable and another one I can't remember, plus set the SHLIBS as well.

After making changes to the dsenv file you will need to recycle the DS engine services, just make sure you exit all DS Clients before doing it.
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

kcbland wrote:As for Sybase, you'll need to do something similar, like set SYBASE environment variable and another one I can't remember, plus set the SHLIBS as well.
SYBASE and SYBASE_OCS.
-craig

"You can never have too many knives" -- Logan Nine Fingers
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

Yeah, that's it, SYBASE_OCS. I was thinking OCI but knew that wasn't right.
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Don't forget to ensure that the 32-bit libraries occur ahead of the 64-bit libraries in the shared library search path used by DataStage processes (unless you're on Tru64 or Itanium machines).
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

still errors :(

Post by drostnu »

hello all, thanks for answering.

ok, i set the oracle variables, please help me again

this is my dsenv file located at /local/dsadm/Ascential/DataStage/DSEngine

[dsadm@sscllinuxora01 DSEngine]$ cat dsenv
#!/bin/sh
####################################################################
#
# dsenv - DataStage environment file
#
# Copyright (c) 1997 - 2004 Ascential Software Corporation. All Rights Reserved
# This is unpublished proprietary source code of Ascential Software Corporation
# The copyright notice above does not evidence any actual or
# intended publication of such source code.
#
# This script is sourced by the DataStage dsrpcd daemon to establish
# proper environment settings for DataStage client connections.
#
# This script may also be sourced by bourne shells to establish
# proper environment settings for local DataStage use.
#
####################################################################

# PLATFORM SPECIFIC SECTION

set +u

if [ -z "$DSHOME" ] && [ -f "/.dshome" ]
then
DSHOME=`cat /.dshome`
export DSHOME
fi

if [ -z "$DSHOME" ]
then
DSHOME=/local/dsadm/Ascential/DataStage/DSEngine; export DSHOME
fi

if [ -z "$APT_ORCHHOME" ]
then
APT_ORCHHOME=; export APT_ORCHHOME
fi

if [ -z "$UDTHOME" ]
then
UDTHOME=/local/dsadm/Ascential/DataStage/ud41; export UDTHOME
UDTBIN=/local/dsadm/Ascential/DataStage/ud41/bin; export UDTBIN
fi

if [ -n "$DSHOME" ] && [ -d "$DSHOME" ]
then
ODBCINI=$DSHOME/.odbc.ini; export ODBCINI
HOME=${HOME:-/}; export HOME

#LANG="<langdef>";export LANG
#LC_ALL="<langdef>";export LC_ALL
#LC_CTYPE="<langdef>";export LC_CTYPE
#LC_COLLATE="<langdef>";export LC_COLLATE
#LC_MONETARY="<langdef>";export LC_MONETARY
#LC_NUMERIC="<langdef>";export LC_NUMERIC
#LC_TIME="<langdef>";export LC_TIME
#LC_MESSAGES="<langdef>"; export LC_MESSAGES

LD_LIBRARY_PATH=`dirname $DSHOME`/branded_odbc/lib:$DSHOME/lib:$DSHOME/uvdlls:$DSHOME/java/jre/lib/i386/client:$DSHOME/java/jre/lib/i386:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

ORACLE_HOME=/local/oracle/product/10.2.0
ORAHOME=/local/oracle/product/10.2.0
LD_LIBRARY_PATH=$ORACLE_HOME/lib32 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/lib32:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/lib32

fi
i restarted datastage, but it didnt work.

how can i set SYBASE and SYBASE_OCS? they are not the same box, they are on another machina, a windows one, like i said upside, ip=10.172.10.26 mine is 10.172.10.232

please someone help me... forzik@hotmail.com...

thanks all!
Diego./[/quote]
Ultramundane
Participant
Posts: 407
Joined: Mon Jun 27, 2005 8:54 am
Location: Walker, Michigan
Contact:

Re: still errors :(

Post by Ultramundane »

If you want to use Sybase open client then you must install it on the unix box.
drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

really?

Post by drostnu »

really? i dont think, sounds very silly.

how come in windows i can connect to others servers and and in unix no?

please some help me... really.
Ultramundane
Participant
Posts: 407
Joined: Mon Jun 27, 2005 8:54 am
Location: Walker, Michigan
Contact:

Re: really?

Post by Ultramundane »

Hey dude. Really really... For real... I have written many books on Sybase. You need to install the Sybase APIs in order to connect to Sybase using the native Sybase stages. If you want to use ODBC. No you don't. But that would be silly being that open client is free on Linux. I believe open client is now part of the software development kit for Linux. Thus, for native you can either install Sybase software development kit (recommended) or you could purchase and install Sybase enterprise connect, replication server, ASE, ASA, or IQ as they all come with open client. Really really for real.
drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

omg

Post by drostnu »

sorry for beeing ironic... now back to the question

is there any other option?

or that is the only one...

thanks again

diego
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

To talk to Oracle using native Oracle libraries, you have to install those libraries on all servers (Unix or Windoze, doesn't matter) that need to talk to the database server. The same is true for Informix, Redbrick, UDB, and Sybase. If you want to use ODBC, you must make sure that the appropriate ODBC driver and driver manager are on all servers (Unix or Windoze, it doesn't matter) that need to talk to the database server.

Your best option is to install the Sybase client on your linux machine, then setup the environment variables. You'll then be able to execute isql, osql, and sqlcmd on the linux machine, talking to a database (who cares where/what hosts the DB?).

In order for DS to talk to Oracle, you'll have to install the Oracle client on the DS Server, but since the same server is hosting your database, the client was most likely installed when the database was setup.
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

yes oracle

Post by drostnu »

yes, i get it Sybase im screwed.

and in the oracle side, i have installed already, its all done, dbs are running and all, i paste the dsenv upside, would someone tell if its ok? because i still get an error with oracle.

thanks
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

You're not screwed with Sybase if you can get your hands on a Sybase ODBC driver and install it. Of course, if you're going to do that you might as well install the Sybase client.

As for Oracle. how do you expect us to tell you what's wrong if you don't tell us what you're doing and don't even paste the error message?
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
drostnu
Participant
Posts: 26
Joined: Tue Jul 18, 2006 4:17 pm

sybase ok.

Post by drostnu »

ok, so now i installed the sybase client on linux.

i got these packs installed

sybase-openclient.i386 11.1.1-3 apps

Sybase Open Client Development Libraries
Sybase Connectivity Open Client(tm) is the industry-leading network
oriented application development environment with tools to maintain
and administrate the Adaptive Server Enterprise platform.


and also found this

sybase-common.i386 11.9.2-3 installed

Sybase Enterprise Software Common Files
Default platform run-time and support environment for Sybase Adaptive
Server Enterprise shared between the SQL Server, bundled products and
Open Client- / Server-development environments.

anyway i just installed the sybase open client, but how do i set SYBASE and SYBASE_OCS is that to make sybase work?

-----

back to oracle

in the dsenv, i added this

ORACLE_HOME=/local/oracle/product/10.2.0
ORAHOME=/local/oracle/product/10.2.0
LD_LIBRARY_PATH=$ORACLE_HOME/lib32
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/lib32:$ORACLE_HOME/lib32:$ORACLE_HOME/rdbms/lib32

but it was giving me a error of "broken pipe" so i commented the lines and it worked again.

no idea whats the problem, please any would be appreciated.!

thanks


diego./

-----------

after installing sybase open client
i receive this message now

Error calling subroutine: DSD.Browse (Action=3); check DataStage is set up correctly in project Dev_Chile

Error calling subroutine: DSD.Browse (Action=2); check DataStage is set up correctly in project Dev_Chile
(The connection is broken (81002))

Error calling subroutine: DSR_JOB (Action=4); check DataStage is set up correctly in project Dev_Chile
(The connection is broken (81002))


weird? no idea
kcbland
Participant
Posts: 5208
Joined: Wed Jan 15, 2003 8:56 am
Location: Lutz, FL
Contact:

Post by kcbland »

Where are your EXPORT statements after you set the environment variables? If you look at the dsenv file, you'll see you didn't do it right.
Kenneth Bland

Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
Post Reply