Visibilidad SQL Server 2000

03/05/2007 - 10:55 por Tomas | Informe spam
Hola a todos.

Tengo un dominio SBS2003 en la red 192.168.16.X, aqui esta el servidor
SQL2000. Todos los PC de este segmento de red trabajan con la base de datos
sin problemas.

Tengo otra red 192.168.100.X con dos PC Windows-XP.

Necesito conectar una aplicacion que funciona en estos PC-XP al servidor
SQL2000 y no consigo ver la base de datos. El mensaje es "El servidor SQL
Server no existe o se denego el acceso".

La cadena de conexion que utilizo es para ADO "Provider=sqloledb;Data
Source=NombreServidor;Initial Catalog=NombreBaseDatos;User
Id=Usuario;Password=Clave"

Si cambio en cadena de conexion el nombre del servidor por la IP del ervidor
tampoco me ha funcionado. "Provider=sqloledb;Data
Source2.168.16.x;Initial Catalog=NombreBaseDatos;User
Id=Usuario;Password=Clave"

Si hago ping a la IP del servidor recibo respuesta correcta. 4 paquetes
enviados, 4 recibidos, 0 perdidos.

Si hago ping al nombre del servidor SQL2000 me devuelve el mensaje de error
"La solicitud de ping no pudo encontrar el host SQL2000".

Si hago TELNET 1433 a la IP del servidor, no hay mensaje de error, en la
pantalla negra pulso CTRL+, exit y se cierra. sin mensajes de error.

Si abro una VPN al servidor si que puedo conectar y trabajar con la base de
datos.

¿Que me falta configurar en los PC-XP, de este otro segmento de red, o en el
servidor, para que puedan ver el servidor SQL2000 y trabajar con la base de
datos de forma "natural"?.

Gracias por anticipado.

Tomas.
 

Leer las respuestas

#1 Rubén Vigón
03/05/2007 - 11:06 | Informe spam
Hola Tomás,

Comprueba en la «Herramienta de cliente de red de SQL Server» los «Protocolos habilitados por orden» si tienes habilitados «TCP/IP» y «Canalizaciones con nombre». Tal vez obtengas el error por utilizar «Canalizaciones con nombre» (Named Pipes) como librería de cliente; prueba a deshabilitarlo y utilizar TCP/IP.

Además, si accedes al servidor por su IP y el puerto 1433 en lugar de por su nombre, deberías utilizar la librería de red "DBMSSOCN" (la librería para TCP/IP, en lugar de "Canalizaciones con nombre") añadiendo ";Network LibraryÛMSSOCN" a tu cadena de conexión; por ejemplo:

"Provider=SQLOLEDB.1;Persist Security Info=False;User ID=usuario;Password=contraseña;Initial Catalog=basedatos;Data Source2.168.16.x,1433;Network LibraryÛMSSOCN"

Un saludo!

Rubén Vigón
Microsoft MVP Visual Basic
http://vigon.mvps.org

Preguntas similares