Welche Ports müssen für Microsoft SQL Server geöffnet werden?

13

Nachdem ich ein paar Mal im Internet nach dem besten Weg gesucht habe, die SQL Server-Konnektivität über die Windows-Firewall zu öffnen, habe ich noch keinen Weg gefunden, dies zu tun. Hat jemand eine garantierte Möglichkeit, die Ports zu finden, auf denen SQL ausgeführt wird, damit Sie sie in der Windows-Firewall öffnen können?

dnolan
quelle

Antworten:

14

Wenn nur eine Instanz von SQL Server ausgeführt wird und der TCP / IP-Transport für nicht lokale Verbindungen aktiviert ist, wird wahrscheinlich der Standard-TCP-Port abgehört: 1433.

Wenn Sie mehrere Instanzen oder andere Komplikationen haben, die über "einer einzelnen Standardinstanz" liegen, sind die Dinge möglicherweise komplizierter. Sie müssen die Ports für jede Instanz festlegen (standardmäßig sind sie semi-zufällig, was für die Firewall-Konfiguration im Allgemeinen nicht hilfreich ist) und müssen auch den SQL Browser-Dienst öffnen (der normalerweise den UDP-Port 1434 überwacht, obwohl dies auch möglich ist neu konfiguriert werden).

Unter http://msdn.microsoft.com/en-us/library/cc646023.aspx finden Sie ausführliche Hinweise zu SQL Server und Firewalls

David Spillett
quelle
4

Sie müssen den Browserdienst starten, um nicht standardmäßige Instanzen aufzulösen. Darüber hinaus ermöglicht das Öffnen von UDP 1434 die Auflösung der benannten Instanzen nach Namen anstelle von Port, sodass Sie die Ports nicht verwenden müssen. Wenn Sie UDP 1434 nicht dauerhaft öffnen können oder wenn Sie einen DBA haben, der vor Ort ist und eine lokale Verbindung herstellen kann, können Sie ihn auffordern, eine Verbindung über SQL Server Mgmt Studio ODER SQLCMD herzustellen und die Serververbindung wie folgt anzugeben:

TCP: Servername \ Instanzname

Das Präfix "tcp" erzwingt eine TCP-Verbindung. Anschließend können Sie eine Verbindung zu Ihrer benannten Instanz herstellen und sys.dm_exec_connections abfragen, um den Port zu ermitteln, auf dem die nicht standardmäßige Instanz ausgeführt wird:

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

Robert Gannon
quelle
0

Der Standardport für SQL Server ist 1433

Brad
quelle
Wenn Sie sich auf einer benannten Instanz befinden, ist dies jedoch nicht immer der Fall
Mark Henderson
Für eine benannte Instanz ist die Portnummer standardmäßig dynamisch.
mrdenny
0

Vielleicht ist es sinnvoll , der Standard - Port Ihrer Instanz zu ändern Sie gesehen haben http://blogs.msdn.com/b/dataaccesstechnologies/archive/2010/03/03/running-sql-server-default-instance-on-a -nicht-standard-oder-nicht-standard-tcp-port-tipps-für-die-anwendung-konnektivität-arbeit.aspx ?

Arshia
quelle
2
Können Sie die relevanten Teile des Links zu Ihrer Antwort hinzufügen? Wir bitten dies, um dem OP zu helfen, damit er nicht nach Informationen suchen muss, die ihn möglicherweise nicht betreffen. Dies dient auch dazu, die relevanten Informationen zu bewahren, falls die Hosting-Site ausfällt. Weitere Informationen finden Sie in diesem Metapost .
Cfinley