Blog gratis
Reportar
Editar
¡Crea tu blog!
Compartir
¡Sorpréndeme!
img
img

 

 

SQL Server
Blog. (Apuntes y Recopilaciones) por Norman M. Pardell

img
img

Solución de problemas en la conexión a SQL Server 2005/2008

Las primeros acciones para solucionar problemas de conexión remota, hay que asegurarse que Named-pipe (NP) o TCP están habilitados en la instancia remota de SQL Server.

El servicio SQL Browser es un servicio Windows que inicia y solicita el puerto UDP 1434. Cuando una aplicación cliente quiere conectarse, envía un mensaje UDP al servidor por el puerto 1434. El SQL Browser responde al mensaje indicando cuál es el puerto TCP/IP o el NP en el que la instancia solicitada está atendiendo.

Ahora es necesario que el SQL Browser esté iniciado para cuando un cliente intenta conectarse a una instancia de SQL Server. Si la instancia remota es una instancia sin nombre, no es requerido tener iniciado al SQL Browser ya que los clientes van a intentar usar el puerto TCP 1433 y el Named-pipe (NP)  "pipesqlquery".

La lista de problemas que puede aparecer se relacionan entonces con:

1. Falla de conexión sobre TCP/IP o NP, si el protocolo usado no está habilitado.

2. Falla de conexión sobre TCP/IP o NP si hay un firewall intermedio y están bloqueados los puertos necesarios o no se ha agregado a la lista de excepciones del firewall a "File and Printer Sharing".

3. Falla de conexión a la instancia SQL remota si el SQL Browser no está iniciado o si el puerto TCP 1434 (donde escucha el SQL Browser) no está abierto en el firewall.

Veamos ahora cómo hacer el tratar un problema de conectividad a una instancia remota. Asumiremos que la instancia de SQL server está iniciada en un servidor remoto y que el cliente ha especificado correctamente el nombre de la instancia remota.

EN EL SERVIDOR SQL:

1. Habilitar TCP y/o NP remoto:

SS2005: Usar SQL Server Surface Area Configuration / Configuration for Services and Connections / Remote Connections.

SS2008: Usar Management Studio / Object Explorer / Seleccionar instancia, clic-derecho, propiedades, Connections y marcar "Allow connections to this server".

2. Verificar el log de errores del servidor SQL, determinar en qué puerto TCP y/o NP está escuchando.

3. Cuando se usa TCP, usar el comando de línea NETSTAT para ver si el servidor está escuchando en el puerto correcto.

netstat -noa findstr NumeroPuerto

4. Verificar el servicio SQL Browser:

Ejecutar en línea de comandos SERVICES.MSC, buscar el servicio "SQL Server Browser", habilitarlo y reiniciarlo. También ir a la utilidad SQL Server Configuration Manager, revisar las propiedades del SQL Browser, en la sección "Advanced" y confirmar que está activo.

5. Habilitar "File and Printer Sharing" en la lista de excepciones del firewall.

6. Agregar el puerto TCP y/o SQLSERVR.EXE (..Binnsqlservr.exe) a la lista de excepciones del firewall.

7. Agregar SQLBROWSER.EXE (..Sharedsqlbrowser.exe) a la lista de excepciones del firewall o agregar el puerto UDP 1434.

8. Confirmar si la instancia remota SQL es la instancia por omisión (sin nombre)

En este caso debe escuchar en el puerto TCP 1433 y en el NP "pipesqlquery"


EN LA ESTACION CLIENTE:

1. Probar PING:

ping IPservidorSql

2. Probar TELNET:

telnet IPservidorSqlNombreInstancia NumeroPuerto

Si la consola de comandos queda totalmente negra sin mensajes, el TELNET ha sido exitoso. Falla cuando aparece un mensaje de error indicando que no pudo conectarse al servidor.

3. Probar IpServidorSql

4. Verificar los protocolos del cliente:

Usar SQL Server Configuration Manager / SQL Native Client Configuration / Client Protocols. Confirmar que NP o TCP están habilitados; clic en las propiedades de los protocolos cliente, ver que NP o TCP están habilitados. Se recomienda poner a TCP al comienzo de la lista de protocolos.

5. Configurar MDAC:

Si se usa MDAC (Driver={SQL Server} o SQLOLEDB.x) en la aplicación cliente, en línea de comandos ejecutar CLICONFG.EXE, habilitar NP y TCP (poner TCP primero en la lista).

6. Probar conexión con OSQL.EXE o SQLCMD.EXE:

osql /S servidorinstancia /E
osql /S servidorinstancia /U usuario /P password

7. Revisar string de conexión

Revisar la sintaxis y los valores del string de conexión de la aplicación cliente, es frecuente cometer errores en el string de conexión.

8. Revisar alias

Si la aplicación cliente se conecta al servidor remoto usando un alias: Si se usa MDAC ejecutar CLICONFG.EXE, ver la solapa "Alias". Si se usa el SQL Native Client, ejecutar SQL Server Configuration Manager y revisar "Aliases".

 

 

(Este articulo, está realizado gracias a la colaboración de Gustavo Larriera y Blogs del msdn ). Fuente: http://blogs.msdn.com/sql_protocols/archive/2006/09/30/SQL-Server-2005-Remote-Connectivity-Issue-TroubleShooting.aspx Apunte y recopilación por Norman M. Pardell


Puedes consultarme, si deseas cualquier aclaración, pregunta o sugerencia en: Contacto, contestaré tan pronto como me sea posible.


publicado por normanmpardell a las 02:50 · Sin comentarios  ·  Recomendar
Comentarios (0) ·  Enviar comentario
Esta entrada no admite comentarios.
img
.Sobre mí
FOTO

Norman M. Pardell

MCITP: Database Administrator & Database Developer, SQL Server 2008. MCC Award Certificate. Consultor Senior de bases de datos en Capgemini España, S.L. Asesoramiento en implementación, desarrollo y gestión de bases de datos en grandes compañías. Actualmente, asignado a proyecto en compañía líder en el sector energético global. Más de 10 años trabajando con SQL Server (y otros gestores de BBDD)

» Ver perfil

img
.Secciones
» Inicio
img
.Enlaces
» Microsoft MSDN Foros
» Windows Server 2012
img
.Más leídos
» Asignar la cantidad correcta de Memoria para SQL Server
» Base de Datos Sospechosa (Suspect)
» Como modificar la Intercalación (Collation) en SQL Server
» Detectar bloqueos. SQL Server V.2005 y superiores
» Funciones SQL Server. Funciones escalares y funciones con valores de tabla.
» Integridad y corrupción en las bases de datos: DBCC CHECKDB
» Log de transacciones ( .ldf ). SQL Server.
» Migrando SQL Server 2005, 2008, 2008 R2 a SQL Server 2012
» Tomo I. Memoria RAM. Optimización de sistemas de 32 y 64 bits. SQL Server 2008.
» Transacciones activas. SQL server 2008
img
.Nube de tags [?]
                                                           
img img
FULLServices Network | Crear blog | Privacidad