ODBC connection from Linux

Tue, 02/02/2010 - 11:00am
Submitted by nulldev1ce

I've been struggling with this for two days and I feel like I might be close, but just can't seem to *quite* get there. Here are my notes:

Server I want to connect from: Fedora Core 9 x86 (32-bit)

Installed these:

oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
oracle-instantclient11.2-odbc-11.2.0.1.0-1.i386.rpm
unixODBC-2.2.12-7.fc9.i386
unixODBC-kde-2.2.12-7.fc9.i386
php-odbc-5.2.9-2.fc9.i386

I've established that the actual driver is libsqora.so.11.1. Other key libraries are under /usr/lib/oracle/11.2/client/lib/ so I needed that to be in the LD path, but for some reason I could not achieve this through normal means (ldconfig etc.) because I am retarded or something so instead I went into /usr/lib and made symlinks:

ln -s /usr/lib/oracle/11.2/client/lib/libnnz11 .
ln -s /usr/lib/oracle/11.2/client/lib/libclntsh.so.11.1 .

Edited /etc/odbcinst.ini and added this:

[Oracle]
Description     = ODBC for Oracle
Driver          = /usr/lib/oracle/11.2/client/lib/libsqora.so.11.1
Driver64    	=
Setup           =
Setup64         =
UsageCount      =
CPTimeout       =
CPReuse         =
FileUsage       = 1

Edited /etc/odbc.ini and added something like this:

[PS]
Driver      = Oracle
ServerName	= ps.mydomain.com
ServerPort	= 1521
Database	= PSPRODDB
UserID      = PSNavigator
Password    = psnavpass

Then I run

isql -v PS

...and it just sits there forever. I never get a prompt or an error or anything, finally I ctrl-c.

For the longest time I was getting "[ISQL]ERROR: Could not SQLConnect" instead but then I think I got all the libraries sorted out (maybe) and that stopped happening.

I edited the PS server's firewall to allow TCP/1521, and when I do a

telnet ps.mydomain.com 1521

...I do get a connection.

I have set a password for PSNavigator from within PowerSchool. I think that, awhile back, I enabled ODBC for custom fields, but I think that's irrelevant at this point -- I'd be happy to get a connection at all. Do I need to do anything else on the PowerSchool end? What am I missing here?

Thanks as always,

-- MB

Comments

Howto updated

Submitted by nulldev1ce on Tue, 02/09/2010 - 11:20am

Finally got it working from PHP. :)

Solved it

Submitted by nulldev1ce on Fri, 02/05/2010 - 2:23pm

Well, after a LOT of trial and error, I think I've got it. Can only connect as root, but I think that'll be relatively easy to fix. Too long to post here, I've written up a separate howto: http://dev.dresden.us/howtos/linux-oracle-odbc-howto.html

in partnership with Creative Breakthroughs