¿Qué puertos abrir para Microsoft SQL Server?

13

Después de haber buscado en Internet varias veces la mejor manera de abrir la conectividad de SQL Server a través del firewall de Windows, todavía no he encontrado la mejor manera de hacerlo. ¿Alguien tiene una forma garantizada de encontrar en qué puertos se está ejecutando SQL para que pueda abrirlos en el firewall de Windows?

dnolan
fuente

Respuestas:

14

Si solo tiene una instancia de SQL Server ejecutándose y tiene el transporte TCP / IP habilitado para conexiones no locales, entonces es probable que escuche en el puerto TCP predeterminado: 1433.

Si tiene varias instancias o cualquier otra complicación por encima de "una sola instancia predeterminada", entonces las cosas pueden ser más complicadas. Deberá establecer los puertos para cada instancia (de forma predeterminada, son semialeatorios, lo que generalmente no es útil para la configuración del firewall) y también deberá abrir el servicio del navegador SQL (que generalmente escucha en el puerto UDP 1434, aunque esto también puede ser reconfigurado).

Hay un conjunto bastante detallado de notas sobre SQL Server y firewalls en http://msdn.microsoft.com/en-us/library/cc646023.aspx

David Spillett
fuente
4

Deberá iniciar el servicio del navegador para resolver instancias no predeterminadas. Además, abrir UDP 1434 permitirá la resolución de las instancias nombradas por nombre en lugar de puerto, por lo que no necesitará usar los puertos. Si no se siente cómodo abriendo UDP 1434 a largo plazo, o si tiene un DBA que está en el sitio y puede conectarse localmente, puede pedirles que se conecten a través de SQL Server Mgmt Studio O SQLCMD y especifiquen la conexión del servidor de la siguiente manera:

tcp: nombre del servidor \ nombre de instancia

El prefijo con tcp forzará una conexión tcp. Una vez hecho esto, puede conectarse a su instancia con nombre y consultar sys.dm_exec_connections para encontrar el puerto en el que se ejecuta la instancia no predeterminada de la siguiente manera:

SELECT local_tcp_port FROM sys.dm_exec_connections WHERE session_id = @@SPID

Robert Gannon
fuente
0

El puerto predeterminado para SQL Server es 1433

Puntilla
fuente
Sin embargo, si está en una instancia con nombre, este no es siempre el caso
Mark Henderson
Para una instancia con nombre, el número de puerto es dinámico de forma predeterminada.
mrdenny
0

Quizás sea útil cambiar el puerto predeterminado de su instancia. ¿Ha visto http://blogs.msdn.com/b/dataaccesstechnologies/archive/2010/03/03/running-sql-server-default-instance-on-a -non-default-or-non-standard-tcp-port-tips-for-making-application-connector-work.aspx ?

Arshia
fuente
2
¿Puede agregar las partes relevantes del enlace en su respuesta? Pedimos esto para ayudar al OP, para que no tengan que buscar información que no les pertenece. Esto también es para preservar la información relevante en caso de que el sitio de alojamiento se caiga. Para más información, vea esta meta publicación .
Cfinley