Re: tsql works, unixODBC's isql doesn't
"ZIGLIO, Frediano, VF-IT" <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
> > I've been spending way too much time trying to get this working, and > have tried every one of various permutations I can think of or come > across in various mailing lists and forums and documentation. > Everyone > else seems to end with "Got it working, thanks!" But I haven't, > yet. :P > > Environment: RHEL 4.1, unixODBC-2.2.11-1.RHEL4.1 was already > installed. > I installed the unixODBC-devel-2.2.11-1 rpm to get the header > files, and > compiled freeTDS 0.83 as such: > > [root@web ~]# tsql -C > Compile-time settings (established with the "configure" script) > Version: freetds v0.83.dev.20080714 > freetds.conf directory: /usr/local/etc > MS db-lib source compatibility: no > Sybase binary compatibility: no > Thread safety: yes > iconv library: yes > TDS version: 5.0 > iODBC: no > unixodbc: yes > > freetds.conf contains the following: > You can use even 0.82, but this is not the problem... > freetds.conf > ======== > [db01] > host = 192.168.1.101 > port = 1434 > tds version = 7.0 > strange port, are you sure is not 1433 ?? 1434 is default udp port for instance informations. > > ...And tsql connects nicely, whether using -H/-p w/ IP and port, or -S > w/ db01. > > All well and good, on to unixODBC. Here's the relevant files: > > odbcinst.ini > ======= > [FreeTDS] > Description = TDS driver with Protocol v7.0 > Driver = /usr/local/lib/libtdsodbc.so > > [FreeTDS2] > Description = v0.63 with protocol v8.0 > Driver = /usr/local/lib/libtdsodbc.so > Setup = /usr/lib/libtdsS.so.1 > UsageCount = 1 Mmmm... why same file for 2 drivers ?? > =========== > END odbcinst.ini > > > odbc.ini > ===== > [ODBC Data Sources] > db01 = This is db01 > db01-2 = This is db01-2 > > [Default] > Driver = /usr/local/lib/libtdsodbc.so > > [db01] > Description = This is db01 > Driver = /usr/local/lib/libtdsodbc.so > # Driver = FreeTDS > # Server = 192.168.1.101 > Server = db01 > # Port = 1434 > # tds_version = 7.0 > Trace = Yes > Tracefile = /tmp/odbc.log > this could work if db01 is the dns name, probably you want Servername, not Server. > [db01-2] > Description = This is db01-2 > Driver = /usr/local/lib/libtdsodbc.so > # Driver = FreeTDS2 > Server = 192.168.1.101 > Port = 1434 > TDS_Version = 7.0 > Trace = Yes > Tracefile = /tmp/odbc.log > ForceTrace = Yes This should work, I don't know trace (which are unixODBC fields) > ========= > END odbc.ini > > > As you can probably see from the comments, I've tried several > variations > of Driver and Server. But pretty much no matter what I do (except > misspell the DSN; that's a different error, obviously), I see this: > > [root@web ~]# isql -v db01-2 $USER $PASS > [S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source > [ISQL]ERROR: Could not SQLConnect > well, driver is correct (error came from FreeTDS). > And there's no tracefile or logfile that I can find. TDSDUMPCONFIG > doesn't do squat (it does when tsql connects successfully), and the > tracefile specified in odbc.ini never gets created. > > I take that back -- even if I give isql a bogus DSN it still spits out > the same thing. I don't think it did at some point in my testing, but > there it is. Somewhere I found a reference to using the osql > util, but > that seems to be looking for iODBC stuff rather than unixODBC: > > [root@web apps]# ./osql -S db01 -U $USER -P $PASS > osql: error: no potential directory strings in "/usr/bin/isql" > isql strings are: > + /lib/ld-linux.so.2 > + /lib/ld-linux.so.2 > > Again, TDSDUMPCONFIG does nothing here. > > Any help? Pointers, logging tips, 2x4 upside the head? I'll take > anything. > You could try a strace -e connect isql db01-2 $USER $PASS freddy77 _______________________________________________ FreeTDS mailing list [email protected] http://lists.ibiblio.org/mailman/listinfo/freetds
smime.p7s
(application/x-pkcs7-signature, 3.1 KB) - not displayed