Wir erhielten diese Hinweise von einen Partner, speziell im Zusammenhang mit Peer-to-peer Netzwerken. Es halft uns aber auch bereits in anderen Konstellationen die Windows-Firewall für den SQL Server frei zu kriegen. Mit folgender, detaillierter Konfigurationsanleitung funktioniert der SQL-Datenbankzugriff praktisch immer:
- 1. Netzwerkkonfiguration
Beim Einsatz eines SQL-Servers im peer-to-peer Netzwerk ist die IP Adresse des
Host-PCs statisch, also fix zu vergeben. - 2. Dienste
- Der Starttyp beim Dienst "SQL Server Browser" ist standardmässig deaktiviert.
Dieser muss auf automatisch gestellt werden.
- Die Dienste "SQL Server (SELECTLINE)" und "SQL Server Browser" müssen
laufen.
3. Konfigurieren des SQL Server-Datenbankmoduls auf dem Host-PC
- SQL Server-Konfigurations-Manager öffnen
- unter SQL Server-Netzwerkkonfiguration im Konsolenbereich die Protokolle
für 'SELECTLINE' erweitern. Sicherstellen, dass "Shared Memory", "Named Pipes"
und "TCP/IP" aktiviert sind.
- auf TCP/IP doppelklicken, Register "IP-Adressen" wählen
- bei der IP-Adresse des SQL-Servers unter "Dynamische TCP-Ports" die "0"
löschen; unter TCP-Port den Port 1433 eintragen.
- SQL-Dienste neu starten
4. Konfigurieren der Windows-Firewall
- Windows-Firewall Konfiguration öffnen, links auf erweiterte Einstellungen klicken,
Rechtsklick auf "Eingehende Regeln"
- TCP Regel erstellen
Neue Regel erstellen, "Port" auswählen, "weiter" klicken, "TCP" auswählen und
unter "Bestimmte lokale Ports" den Port 1433 eintragen, auf "weiter" klicken, im
nächsten Schritt "Verbindung zulassen" anwählen. Im letzten Schritt kann der
soeben erstellen Regel noch ein Name vergeben werden (z.B. "SQL Server").
- UDP Regel erstellen
Neue Regel erstellen, "Port" auswählen, "weiter" klicken, "UDP" auswählen und
unter "Bestimmte lokale Ports" den Port 1434 eintragen, auf "weiter" klicken, im
nächsten Schritt "Verbindung zulassen" anwählen. Im letzten Schritt kann der
soeben erstellen Regel noch ein Name vergeben werden (z.B. "SQL Server
Browser").