Skip to Content.
Sympa Menu

freetds - Re: [freetds] How does one actually *use* FreeTDS?

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Merle Reinhart <merlereinhart AT mac.com>
  • To: freetds AT lists.ibiblio.org
  • Subject: Re: [freetds] How does one actually *use* FreeTDS?
  • Date: Sat, 11 Apr 2009 14:18:31 -0400

Michael,

I use FreeTDS to talk to both Sybase and MS SQL Servers from Mac OS 10.5.6 at work.

I don't use unixODBC since iODBC comes installed with the Mac OS, so my examples below assume iODBC was used when compiling FreeTDS. Also, I build FreeTDS myself and installed it in /usr/local/freetds/ so adjust accordingly.

I pretty much just followed what is described in the freetds user guide using the ODBC-combined configuration since I want to use sqsh (or fisql) and ODBC to talk to the servers duplicating as little of the details of the servers as possible between the two sets of configuration files.

Here is an example from my freetds.conf file. The Sybase server in this example is 'bob' and the MS SQL server is 'fred'. The Sybase servers far out number and were in existence prior to the MS SQL server, so that is why the tds version 5 is specified in the [global] section. The other thing is I use my local DNS server to resolve the hostname rather than hardcode IP-addresses into the file.


freetds.conf:

[global]
# TDS protocol version
tds version = 5.0

[BOB]
host = bob.domain.com
port = 9002

[FRED]
host = fred.domain.com
port = 1433
tds version = 8.0



That will let me connect to the servers via sqsh or fisql. Now to setup the ODBC configuration files.

iODBC on the Mac expects to see the configuration files in /Library/ ODBC for system-wide configurations and ~/Library/ODBC for user configurations. I use the system-wide configurations so all the users on that Mac can connect to the servers. Normally, the ODBC driver installer package is expected to create the appropriate odbcinst.ini file. Once that is done, the /Applications/Utilities/ODBC Administrator can be used to setup the database connections. However, freetds doesn't include a Mac OS X native installer for the ODBC driver so the file must be created by hand with a text editor.

So, create the /Library/ODBC directory if is doesn't exist.

My odbcinst.ini file for freetds is:

;
; odbcinst.ini
;
[ODBC Drivers]
FreeTDS = Installed


[FreeTDS]
Driver = /usr/local/freetds/lib/libtdsodbc.so



You an use the ODBC Administrator app to create the odbc entries, but I just used a text editor. The file goes in /Library/ODBC and is called odbc.ini:

[ODBC Data Sources]
BOB = FreeTDS
FRED = FreeTDS

[BOB]
Driver = /usr/local/freetds/lib/libtdsodbc.so
Description = BOB Sybase Server
Servername = BOB

[FRED]
Driver = /usr/local/freetds/lib/libtdsodbc.so
Description = Fred MS SQL Server
Servername = FRED

[Default]
Driver = /usr/local/freetds/lib/libtdsodbc.so



That's it. You should now be able to see the entries in the ODBC Administrator GUI tool.

This has worked for me for several years now with several Sybase servers and in the past year with a MS SQL Server.


All this was figured out by just going through the freetds userguide and a little playing. The 'Servername' in the ODBC file must match the freetds.conf entry since I'm using the ODBC-combined configuration. That's the only thing I can think of to watch out for.


Merle





On Apr 11, 2009, at 1:20 PM, freetds-request AT lists.ibiblio.org wrote:

Message: 1
Date: Sat, 11 Apr 2009 10:54:21 -0400
From: "lists AT mgreg.com" <lists AT mgreg.com>
Subject: [freetds] How does one actually *use* FreeTDS?
To: freetds AT lists.ibiblio.org
Message-ID: <0C3CDB08-A0A9-48E0-8B82-24D410493725 AT mgreg.com>
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes

Hi All,

I'm a bit confused as to how to actually go about using the FreeTDS
library. My ultimate goal is to be able to use it as my means of
contact with MS SQL Server from Mac OS 10.5.6. I see all kinds of
documentation regarding installation, but very little about actual use
cases.

Perhaps I have the wrong thing in mind, but I'm looking to use the
ODBC Administrator to set up a DSN and take it from there. I also
have unixODBC installed, but am not quite sure if what I'm looking for
is directly possible?

FYI, I've installed FreeTDS via Macports and have done no manual
configuration, but I'm more than happy to go back and manually install
if that will provide me with what I need.


Best,
Michael





Archive powered by MHonArc 2.6.24.

Top of Page