Friday, April 18, 2008

UnixODBC en Ubuntu

Estoy buscando formas de acceder directamente a un servidor MS SQL Server desde mi Ubuntu 7.10.

Para ello estoy experimentando con UnixODBC.

Inicialmente instalé los paquetes unixodbc y unixodbc-bin.

La instalación no generó accesos a nada en el menú de Ubuntu, por lo que los creé a mano.

Los ejecutables que se instalaron con unixodbc-bin estaban en /usr/bin, y son DataManager, DataManagerII, ODBCConfig y odbctest.

Revisando la documentación, me di cuenta que no están en forma nativa los drivers para SQL Server, y que se utilizan los de FreeTDS, por lo que instalé el paquete tdsodbc.

Para configurar, y como root, ejecuté el comando sudo ODBCConfig.
En la pantalla, seleccionamos la lengüeta drivers, y selecionamos el boton Add.
La completamos como se ve en la figura adjunta.




Seguidamente, creamos el ODBC, esto es en la lengüeta System DSN.










Lo siguiente es revisar el archivo /etc/odbc.ini, el que quedó de la siguiente forma:

[SetupApp]
Description = MSSQL
Driver = MSSQL
Servername =
Database = SetupApp
UID = actualiza
PWD = xxxxxxxxx
Port = 1433
Server = 192.168.4.18

Cuando lo probé con isql, me dió un error. La solución que encontré "por ahora", es definir también la conexión en /etc/freetds/freetds.conf, que quedó de la siguiente forma:


[SetupApp]

host = 192.168.4.18
port = 1433
tds version = 8.0

Luego prové con isql (isql -v SetupApp actualiza xxxxxxxx) y se conectó.

Aún tengo problemas para hacer consultas con OpenOffice, dado que en ocasiones se cuelga, pero eso está en evaluación y pronto agregaré un post con las mejoras.