Acabo de conectarme con SQL Server desde Ubuntu.
Hay que instalar los siguientes paquetes:
sudo apt-get install unixodbc unixodbc-dev freetds-dev sqsh tdsodbc
Editar el fichero /etc/freetds/freetds.conf y añadir las siguientes lineas:
[MISERVIDOR]
host = 192.168.1.36
port = 2301
tds version = 7.0
el valor de "tds version" varía en función de la versión de sqlserver que se esté usando. En mi caso es un SQLExpress 2005, asi que "tds version" tiene que ser 7.0. Podeis consultar las versiones aqui:
http://www.freetds.org/userguide/choosingtdsprotocol.htm
En el fichero /etc/odbc.ini:
[MISERVIDOR]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Servername = MISERVIDOR
Database = prueba_development
Trace = No
UID = david
pwd = david
He tenido problemas porque el SQL Server del que dispongo es una version SQLExpress 2005, que no admite conexiones remotas por defecto. En el panel de control de SQL Server Configuration Manager, hay que habilitar las conexiones remotas.
Si no se accede por el browser de nombres de SQLServer, tienes que definir un puerto en SQL Server Configuration Manager => Protocols for SQLExpress => TCP/IP, en "IP All" => TCP Dynamic Ports. Ahí he definido el puerto 2301, que es el que aparece en el fichero /etc/freetds/freetds.conf.
Para probar la conexion basta con ejecutar:
sqsh -S MISERVIDOR -U david -P david
Si aparece ">1" es que te has conectado. Ahora puedes ejecutar:
use prueba_development
go
select * from mitabla
go
Con la utilidad iodbcadm-gtk, tambien puedes crear el dsn. Primero tienes que definir el driver, diciendole que el fichero del driver es:
/usr/lib/odbc/libtdsodbc.so
y el fichero de setup es:
/usr/lib/libtdsS.so
Luego defines el dsn con ese driver y pruebas la conexion.
Hay que instalar los siguientes paquetes:
sudo apt-get install unixodbc unixodbc-dev freetds-dev sqsh tdsodbc
Editar el fichero /etc/freetds/freetds.conf y añadir las siguientes lineas:
[MISERVIDOR]
host = 192.168.1.36
port = 2301
tds version = 7.0
el valor de "tds version" varía en función de la versión de sqlserver que se esté usando. En mi caso es un SQLExpress 2005, asi que "tds version" tiene que ser 7.0. Podeis consultar las versiones aqui:
http://www.freetds.org/userguide/choosingtdsprotocol.htm
En el fichero /etc/odbc.ini:
[MISERVIDOR]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Servername = MISERVIDOR
Database = prueba_development
Trace = No
UID = david
pwd = david
He tenido problemas porque el SQL Server del que dispongo es una version SQLExpress 2005, que no admite conexiones remotas por defecto. En el panel de control de SQL Server Configuration Manager, hay que habilitar las conexiones remotas.
Si no se accede por el browser de nombres de SQLServer, tienes que definir un puerto en SQL Server Configuration Manager => Protocols for SQLExpress => TCP/IP, en "IP All" => TCP Dynamic Ports. Ahí he definido el puerto 2301, que es el que aparece en el fichero /etc/freetds/freetds.conf.
Para probar la conexion basta con ejecutar:
sqsh -S MISERVIDOR -U david -P david
Si aparece ">1" es que te has conectado. Ahora puedes ejecutar:
use prueba_development
go
select * from mitabla
go
Con la utilidad iodbcadm-gtk, tambien puedes crear el dsn. Primero tienes que definir el driver, diciendole que el fichero del driver es:
/usr/lib/odbc/libtdsodbc.so
y el fichero de setup es:
/usr/lib/libtdsS.so
Luego defines el dsn con ese driver y pruebas la conexion.
gracias por el aporte, me sirvio bastante
ResponderEliminarhe probado los siguiente sintaxis en la terminal
ResponderEliminarsqsh -S servidor sql -U usuario por defecto sql -P contraseña servidor
pero al intentar conectar me sale el siguiente mensaje:
unable to conect: adaptive server is unavailable or does not exist.
he probado conectividad al servirdor con windows 7 y xp no tengo problemas. espero sus sugerencias
gracias.
estoy tratando de conectar un sistema de gestion desarrollado en powerbuilder y la base de datos esta en sql server, ya baje e instale freetds pero aun no logro establecer conexion.
ResponderEliminar