[SQL Server 2008] Kein Zugriff auf Datenbanken

Mal eine Anekdote aus meinem (aufregenden) Berufsleben: Ich hatte vor einigen Wochen die Freude einen Windows 2008 R2 Server 64-Bit inklusive SQL Server 2008 64-Bit aufzusetzen. Die Installation des Betriebssystems und des SQL Servers waren schnell vollbracht, der Server in die Domäne integriert und die Datenbanken eingerichtet. Problem: Kein Zugriff von Clients auf die SQL-Datenbanken.

Nach kurzer Fehlersuche war das Problem gefunden. Die Windows-Firewall hatte die Zugriffe blockiert. Die Lösung des Problems: Freigabe der Ports für den SQL Server in der Firewall. Microsoft empfiehlt eine Batchdatei mit folgendem Inhalt anzulegen und auf dem betroffenen Server auszuführen:

@echo =========  Ports des SQL-Servers  ===================
@echo Aktivieren von Port 1433 für die SQLServer-Standardinstanz
netsh firewall set portopening TCP 1433 "SQLServer"
@echo Aktivieren von Port 1434 für dedizierte Administratorverbindungen
netsh firewall set portopening TCP 1434 "SQL-Administratorverbindung"
@echo Aktivieren von Port 4022 für den konventionellen SQL Server-Service Broker
netsh firewall set portopening TCP 4022 "SQL-Service Broker"
@echo Aktivieren von Port 135 für Transact-SQL-Debugger/RPC
netsh firewall set portopening TCP 135 "SQL-Debugger/RPC"
@echo =========  Ports für Analysedienste  ==============
@echo Aktivieren von Port 2383 für die SSAS-Standardinstanz
netsh firewall set portopening TCP 2383 "Analysedienste"
@echo Aktivieren von Port 2382 für den SQL Server-Browserdienst
netsh firewall set portopening TCP 2382 "SQL-Browser"
@echo =========  Verschiedene Anwendungen  ==============
@echo Aktivieren von Port 80 für HTTP
netsh firewall set portopening TCP 80 "HTTP"
@echo Aktivieren von Port 443 für SSL
netsh firewall set portopening TCP 443 "SSL"
@echo Aktivieren des Ports für die Schaltfläche 'Durchsuchen' des SQL Server-Browserdiensts
netsh firewall set portopening UDP 1434 "SQL-Browser"
@echo Zulassen von Multicast-/Broadcastantwort auf UDP (Aufzählung der Browserdienste OK)
netsh firewall set multicastbroadcastresponse ENABLE 

Der Code stammt aus diesem Knowledgebase-Artikel. Ich habe die Befehle mal als Batch-Datei zusammengefasst:

Für mich stellt sich nur die Frage, warum Microsoft nicht auf diesen Punkt während der Installation des SQL Servers hinweist. Oder noch besser, warum die Portfreigaben nicht automatisch in der Firewall gesetzt werden. Nun gut. Beim nächsten mal bin ich schlauer.

3 Kommentare

Dein Kommentar