Pharo y MSSQL

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Pharo y MSSQL

Sergio Fedi
Hola lista!

Estamos tratando de conectar a Pharo con un servidor de SQL Server.

Ahora bien, el Pharo que estamos usando es la distribucion one-click de Seaside.
A la cual le instalamos el paquete de SquakDBX, bajado via Monticello.
Segun averiguamos hacia falta bajar la DLL de OpenDBX y FreeTDS.
Bajamos las bibliotecas precompiladas de OpenDBX y compilamos FreeTDS
0.82 con MinGW.
El Pharo lo usamos desde una PC Windows 7 64 bits conectada por red a
un SQL Server Express, que corre en un Windows XP.
Pero tambien lo probamos desde la misma maquina donde esta el SQL
Server Express y desde otra maquina con XP.
En todos los casos nos tira el mismo error.
Debido a esto, estamos descartando que el problema sea la red y la
version de sistema operativo.

Nos anda el connect con el DBXMSQLPlatform, pero al hacer el open nos tira un:

     DBXRecoverableError: RECOVERABLE OpenDBX: Connecting to server failed

Probamos con un cliente SQL y la conexion funciona, pero no estamos
seguros que si esa conexion que funciona va por TCP o named pipes.

¿El camino que estamos haciendo es el correcto o hay otra forma mejor
o al menos diferente?
¿Alguna idea de que puede estar fallando?

Desde ya, gracias por las respuestas.


PD:

El codigo que usamos para conectarnos es este:

connectionSettings := DBXConnectionSettings host:
'WinXPGuest\SQLEXPRESS' port: '1433' database: 'Archer' userName: 'sa'
userPassword: 'pass'.

conn := DBXConnection platform: DBXMSSQLPlatform new settings:
connectionSettings.

conn connect.

conn open.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Diogenes Moreira
Hola.. algunas cositas.

tema 1- squeak dbx y ffi estan compilados en 32 bit..aca hay una guia para 64bits http://www.squeakdbx.org/SqueakDBX%20in%2064%20bits 

tema2:  si ya se pudieron conectar con freetds desde linea de comando..(algo altamente recomendable)..
algo que pueden hacer es habilitar el log de tds desde el freetds.conf 

http://www.squeakdbx.org/SQL%20Server en este link esta como conectarse desde linux, pero los pasos de configuración del freetds son igual para windows.

tema 3-
con respecto al nombre de la maquina donde esta la db yo uso la ip.. porque hay un bug en el netresolver de pharo en redes netbios.. no se si esta resulto..

Saludos

2011/6/17 Sergio Fedi <[hidden email]>
Hola lista!

Estamos tratando de conectar a Pharo con un servidor de SQL Server.

Ahora bien, el Pharo que estamos usando es la distribucion one-click de Seaside.
A la cual le instalamos el paquete de SquakDBX, bajado via Monticello.
Segun averiguamos hacia falta bajar la DLL de OpenDBX y FreeTDS.
Bajamos las bibliotecas precompiladas de OpenDBX y compilamos FreeTDS
0.82 con MinGW.
El Pharo lo usamos desde una PC Windows 7 64 bits conectada por red a
un SQL Server Express, que corre en un Windows XP.
Pero tambien lo probamos desde la misma maquina donde esta el SQL
Server Express y desde otra maquina con XP.
En todos los casos nos tira el mismo error.
Debido a esto, estamos descartando que el problema sea la red y la
version de sistema operativo.

Nos anda el connect con el DBXMSQLPlatform, pero al hacer el open nos tira un:

    DBXRecoverableError: RECOVERABLE OpenDBX: Connecting to server failed

Probamos con un cliente SQL y la conexion funciona, pero no estamos
seguros que si esa conexion que funciona va por TCP o named pipes.

¿El camino que estamos haciendo es el correcto o hay otra forma mejor
o al menos diferente?
¿Alguna idea de que puede estar fallando?

Desde ya, gracias por las respuestas.


PD:

El codigo que usamos para conectarnos es este:

connectionSettings := DBXConnectionSettings host:
'WinXPGuest\SQLEXPRESS' port: '1433' database: 'Archer' userName: 'sa'
userPassword: 'pass'.

conn := DBXConnection platform: DBXMSSQLPlatform new settings:
connectionSettings.

conn connect.

conn open.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Diogenes Moreira
ah un detalle que no mi di cuenta.. las conexiones por pipes y sharedmemory no estan soportadas por freetds... y sql express tiene por default deshabilitado la conexion tcp...

Saludos

2011/6/17 Diogenes Moreira <[hidden email]>
Hola.. algunas cositas.

tema 1- squeak dbx y ffi estan compilados en 32 bit..aca hay una guia para 64bits http://www.squeakdbx.org/SqueakDBX%20in%2064%20bits 

tema2:  si ya se pudieron conectar con freetds desde linea de comando..(algo altamente recomendable)..
algo que pueden hacer es habilitar el log de tds desde el freetds.conf 

http://www.squeakdbx.org/SQL%20Server en este link esta como conectarse desde linux, pero los pasos de configuración del freetds son igual para windows.

tema 3-
con respecto al nombre de la maquina donde esta la db yo uso la ip.. porque hay un bug en el netresolver de pharo en redes netbios.. no se si esta resulto..

Saludos

2011/6/17 Sergio Fedi <[hidden email]>
Hola lista!

Estamos tratando de conectar a Pharo con un servidor de SQL Server.

Ahora bien, el Pharo que estamos usando es la distribucion one-click de Seaside.
A la cual le instalamos el paquete de SquakDBX, bajado via Monticello.
Segun averiguamos hacia falta bajar la DLL de OpenDBX y FreeTDS.
Bajamos las bibliotecas precompiladas de OpenDBX y compilamos FreeTDS
0.82 con MinGW.
El Pharo lo usamos desde una PC Windows 7 64 bits conectada por red a
un SQL Server Express, que corre en un Windows XP.
Pero tambien lo probamos desde la misma maquina donde esta el SQL
Server Express y desde otra maquina con XP.
En todos los casos nos tira el mismo error.
Debido a esto, estamos descartando que el problema sea la red y la
version de sistema operativo.

Nos anda el connect con el DBXMSQLPlatform, pero al hacer el open nos tira un:

    DBXRecoverableError: RECOVERABLE OpenDBX: Connecting to server failed

Probamos con un cliente SQL y la conexion funciona, pero no estamos
seguros que si esa conexion que funciona va por TCP o named pipes.

¿El camino que estamos haciendo es el correcto o hay otra forma mejor
o al menos diferente?
¿Alguna idea de que puede estar fallando?

Desde ya, gracias por las respuestas.


PD:

El codigo que usamos para conectarnos es este:

connectionSettings := DBXConnectionSettings host:
'WinXPGuest\SQLEXPRESS' port: '1433' database: 'Archer' userName: 'sa'
userPassword: 'pass'.

conn := DBXConnection platform: DBXMSSQLPlatform new settings:
connectionSettings.

conn connect.

conn open.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org


--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Mariano Martinez Peck
In reply to this post by Sergio Fedi
Hola Sergio. Nuestro experto en MSSQL es Diógenes ;)
Así que espero que su ayuda te sirva.

Lo único que yo te puedo pasar, son algunos links donde tratamos de documentar lo mejor posible como compilar para cada backend:

http://www.squeakdbx.org/SQL%20Server%20for%20Win
http://www.squeakdbx.org/SQL%20Server
http://www.squeakdbx.org/Common%20steps
http://www.squeakdbx.org/SqueakDBX%20in%2064%20bits

Si con lo de Diógenes no se soluciona, por favor avisanos. Si se solucionó, también estaría bueno saber que cosas podemos agregar a esos links.

Saludos

Mariano

2011/6/18 Sergio Fedi <[hidden email]>
Hola lista!

Estamos tratando de conectar a Pharo con un servidor de SQL Server.

Ahora bien, el Pharo que estamos usando es la distribucion one-click de Seaside.
A la cual le instalamos el paquete de SquakDBX, bajado via Monticello.
Segun averiguamos hacia falta bajar la DLL de OpenDBX y FreeTDS.
Bajamos las bibliotecas precompiladas de OpenDBX y compilamos FreeTDS
0.82 con MinGW.
El Pharo lo usamos desde una PC Windows 7 64 bits conectada por red a
un SQL Server Express, que corre en un Windows XP.
Pero tambien lo probamos desde la misma maquina donde esta el SQL
Server Express y desde otra maquina con XP.
En todos los casos nos tira el mismo error.
Debido a esto, estamos descartando que el problema sea la red y la
version de sistema operativo.

Nos anda el connect con el DBXMSQLPlatform, pero al hacer el open nos tira un:

    DBXRecoverableError: RECOVERABLE OpenDBX: Connecting to server failed

Probamos con un cliente SQL y la conexion funciona, pero no estamos
seguros que si esa conexion que funciona va por TCP o named pipes.

¿El camino que estamos haciendo es el correcto o hay otra forma mejor
o al menos diferente?
¿Alguna idea de que puede estar fallando?

Desde ya, gracias por las respuestas.


PD:

El codigo que usamos para conectarnos es este:

connectionSettings := DBXConnectionSettings host:
'WinXPGuest\SQLEXPRESS' port: '1433' database: 'Archer' userName: 'sa'
userPassword: 'pass'.

conn := DBXConnection platform: DBXMSSQLPlatform new settings:
connectionSettings.

conn connect.

conn open.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org



--
Mariano
http://marianopeck.wordpress.com

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Mariano Martinez Peck
In reply to this post by Sergio Fedi



El codigo que usamos para conectarnos es este:

connectionSettings := DBXConnectionSettings host:
'WinXPGuest\SQLEXPRESS' port: '1433' database: 'Archer' userName: 'sa'
userPassword: 'pass'.


Yo conozco poco de SQLServer, pero yo hago:

self connectionSettings: (DBXConnectionSettings
                host: 'SQLSERVER_TDS'
                "host: '169.254.96.198'"
                port: '3004'
                database: 'sodbxtest'
                userName: 'crapodino'
                userPassword: 'florynano').
    self platform: DBXMSSQLBackend new.


donde 'SQLSERVER_TDS' es el nombre del TDS. En tu caso 'WinXPGuest\SQLEXPRESS' es lo mismo?

 
conn := DBXConnection platform: DBXMSSQLPlatform new settings:
connectionSettings.

conn connect.

conn open.

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org




--
Mariano
http://marianopeck.wordpress.com

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Sergio Fedi
Genial! Mil gracias por la ayuda.

Ya pudimos solucionar el tema.

Cuando Diogenes nos tiró lo del freetds.conf nos dimos cuenta de que
no teniamos ese archivo.
Investigando un poco mas, tambien nos dimos cuenta que además fallaba
porque no teniamos definidas ciertas variables de entorno.
Todo eso estaba generado en el entorno de MinGW, donde compilamos FreeTDS.
Pero nunca fue trasladado al entorno de producción, porque creíamos
que con sólo la LIB alcanzaba.

Creo que el error nos surgió porque las explicaciones de cómo instalar
y configurar FreeTDS suponen que vas a utilizarlo en el mismo entorno
donde se compila.

Mil gracias por la ayuda chicos, porque además nos atajaron un par de
problemas que tuvimos después.

:)

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org
Reply | Threaded
Open this post in threaded view
|

Re: Pharo y MSSQL

Mariano Martinez Peck


2011/6/21 Sergio Fedi <[hidden email]>
Genial! Mil gracias por la ayuda.

Ya pudimos solucionar el tema.

Cuando Diogenes nos tiró lo del freetds.conf nos dimos cuenta de que
no teniamos ese archivo.

Te dije, Diogenes es nuestro MSSQL guru :)
 
Investigando un poco mas, tambien nos dimos cuenta que además fallaba
porque no teniamos definidas ciertas variables de entorno.
Todo eso estaba generado en el entorno de MinGW, donde compilamos FreeTDS.
Pero nunca fue trasladado al entorno de producción,

se puede saber de que es la app? hay link? de chusma nomas....
 
porque creíamos
que con sólo la LIB alcanzaba.

Con la mayoría (sino todos) los backends, con eso alcanza. Tal vez alguna variable de entorno es necesario. Pero ODBC es distinto y necesita de ciertos archivos.
 

Creo que el error nos surgió porque las explicaciones de cómo instalar
y configurar FreeTDS suponen que vas a utilizarlo en el mismo entorno
donde se compila.


ajá....entiendo.  Por ahí podriamos agregar una nota explicando....

 
Mil gracias por la ayuda chicos, porque además nos atajaron un par de
problemas que tuvimos después.

:)


:)

 
--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]

http://www.clubSmalltalk.org



--
Mariano
http://marianopeck.wordpress.com

--
To post to this group, send email to [hidden email]
To unsubscribe from this group, send email to [hidden email]
 
http://www.clubSmalltalk.org