Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server - nur Windows
Der SQL Server-Browser (sqlbrowser
) wird als Dienst ausgeführt, um Clientcomputern zu helfen, Instanzen von SQL Server auf einem Server unter Windows zu finden. SQL Server-Browser wird mit SQL Server installiert. Der SQL Server-Browserdienst muss nicht konfiguriert werden, muss jedoch unter einigen Verbindungsszenarien ausgeführt werden.
Der SQL Server-Browser kann Folgendem helfen:
Durchsuchen einer Liste verfügbarer Server Für jede Instanz der Datenbank-Engine und der SQL Server Analysis Services (SSAS) liefert der Dienst SQL Server Browser den Instanznamen und die Versionsnummer.
Herstellen einer Verbindung mit der richtigen Serverinstanz
Herstellen einer Verbindung mit den Endpunkten einer dedizierten Administratorverbindung (DAC)
Konfigurieren des SQL Server-Browserdiensts
SQL Server-Browser kann während des Setups oder mithilfe von SQL Server-Konfigurations-Manager konfiguriert werden. In den folgenden Situationen wird der SQL Server -Browserdienst standardmäßig gestartet:
- Beim Ausführen eines Upgrades für eine Installation.
- Beim Installieren in einem Cluster.
- Beim Installieren einer benannten Instanz der Datenbank-Engine, die alle Instanzen von SQL Server Express einschließt.
- Beim Installieren einer benannten Instanz von SSAS
Funktionsweise von SQL Server-Browser
In den folgenden Abschnitten wird beschrieben, wie der SQL Server-Browserdienst funktioniert.
- TCP/IP-Port oder benannte Pipezuweisung
- Benannte Instanzen und dynamische Ports
- SQL Server-Startprozess und Portermittlung
TCP/IP-Port oder benannte Pipezuweisung
Wenn eine Instanz von SQL Server gestartet wird und das TCP/IP-Protokoll für SQL Server aktiviert ist, wird der Instanz ein TCP/IP-Port zugewiesen. SQL Server lauscht auf eine bestimmte Named Pipe, wenn das Named Pipe-Protokoll aktiviert ist. Dieser Port oder diese benannte Pipe wird von dieser speziellen Instanz für den Datenaustausch mit Client-Anwendungen verwendet. TCP/IP-Port 1433
und Pipe \sql\query
werden während der Installation der Standardinstanz zugewiesen. Der Serveradministrator kann den Port oder die Named Pipe mit dem SQL Server Configuration Manager ändern.
Benannte Instanzen und dynamische Ports
Da nur eine Instanz von SQL Server einen Port oder eine Pipe verwenden kann, werden unterschiedliche Portnummern und Pipenamen für benannte Instanzen, einschließlich SQL Server Express Edition, zugewiesen. Wenn diese Option aktiviert ist, werden benannte Instanzen und SQL Server Express standardmäßig für die Verwendung dynamischer Ports konfiguriert. Das heißt, beim Start von SQL Server wird ein verfügbarer Port zugewiesen.
Bei Bedarf kann einer Instanz von SQL Server ein bestimmter Port zugewiesen werden. Clients können bei der Verbindung mit SQL Server einen bestimmten Port angeben. Wenn der Port jedoch dynamisch zugewiesen wird, kann sich die Portnummer jederzeit ändern, wenn die SQL Server-Instanz neu gestartet wird, sodass die richtige Portnummer für den Client unbekannt ist.
SQL Server-Startprozess und Portermittlung
Beim Start startet der SQL Server-Browser und ruft den UDP-Port 1434
(User Datagram Protocol) auf. SQL Server-Browser liest die Registrierung, identifiziert alle Instanzen von SQL Server auf dem Computer und notiert die verwendeten Ports und Named Pipes. Wenn ein Server über zwei oder mehr Netzwerkkarten verfügt, gibt SQL Server-Browser den ersten aktivierten Port zurück, der für SQL Server gefunden wird. SQL Server-Browser unterstützt IPv4 und IPv6.
Wenn SQL Server-Clients SQL Server-Ressourcen anfordern, sendet die Clientnetzwerkbibliothek eine UDP-Nachricht mithilfe des Ports 1434
an den Server. SQL Server-Browser antwortet mit dem TCP/IP-Port oder der Named Pipe der angeforderten Instanz. Anschließend wird die Verbindung durch die Netzwerkbibliothek der Clientanwendung vollständig abgeschlossen, indem über den Port oder die Named Pipe der gewünschten Instanz eine Anforderung an den Server gesendet wird.
Weitere Informationen zum Starten und Beenden des SQL Server-Browserdiensts finden Sie unter Start, Beenden, Anhalten, Fortsetzen und Neustarten von SQL Server-Diensten.
SQL Server-Browser verwenden
Wenn der SQL Server-Browser-Dienst nicht ausgeführt wird, können Sie trotzdem eine Verbindung mit SQL Server herstellen, wenn Sie die richtige Portnummer oder Named Pipe angeben. Sie können z. B. eine Verbindung mit der Standardinstanz von SQL Server mit TCP/IP herstellen, wenn sie auf dem Port 1433
ausgeführt wird.
Folgende Verbindungen können jedoch nicht hergestellt werden, wenn der SQL Server-Browser nicht ausgeführt wird:
Ein Verbindungsversuch einer beliebigen Komponente mit einer benannten Instanz ohne Angabe aller Parameter (z. B. des TCP/IP-Ports oder der Named Pipe).
Jede Komponente, die
<server>\<instance>
-Informationen generiert oder übergibt, die andere Komponenten später verwenden können, um sich erneut zu verbinden.Verbindung mit einer benannten Instanz ohne Angabe der Portnummer oder der Pipe.
Diagnoseverbindung für Datenbankadministratoren mit einer benannten Instanz oder der Standardinstanz, wenn nicht TCP/IP-Port verwendet
1433
wird.Der Online Analytical Processing (OLAP) Umleitungsdienst.
Aufzählen von Servern in SQL Server Management Studio.
Angenommen, Sie verwenden SQL Server in einem Clientserverszenario (z. B. wenn Ihre Anwendung über ein Netzwerk auf SQL Server zugreift). Wenn Sie den SQL Server-Browserdienst beenden oder deaktivieren, müssen Sie jeder Instanz eine bestimmte Portnummer zuweisen und ihren Clientanwendungscode so konfigurieren, dass diese Portnummer verwendet wird. Dieser Ansatz birgt folgende Probleme:
Sie müssen den Code der Clientanwendung aktualisieren und überarbeiten, um sicherzustellen, dass eine Verbindung mit dem richtigen Port hergestellt wird.
Der port, den Sie für jede Instanz auswählen, kann von einem anderen Dienst oder einer anderen Anwendung auf dem Server verwendet werden, wodurch die Sql Server-Instanz nicht verfügbar ist.
Cluster und SQL Server-Browser
SQL Server-Browser ist keine Clusterressource und unterstützt kein Failover von einem Clusterknoten zum anderen. Wenn es also einen Cluster gibt, sollte der SQL Server Browser für jeden Clusterknoten installiert und aktiviert werden. Auf Clustern hört der SQL Server-Browser auf IP_ANY
.
Hinweis
Wenn der SQL Server Browser auf IP_ANY
hört und Sie das Abhören auf bestimmten IP-Adressen aktivieren, müssen Sie auf jeder IP-Adresse denselben TCP/IP-Port konfigurieren, da der SQL Server Browser das erste IP-Adressen- und Port-Paar zurückgibt, auf das er trifft.
Installieren, Deinstallieren und Ausführen über die Befehlszeile
Das SQL Server-Browser-Programm wird standardmäßig unter <drive>:\Program Files (x86)\Microsoft SQL Server\<nn>\Shared\sqlbrowser.exe
installiert.
Der SQL Server -Browserdienst wird deinstalliert, wenn die letzte Instanz von SQL Server entfernt wird.
SQL Server-Browser kann zur Problembehandlung mit der Option -c
von der Eingabeaufforderung aus gestartet werden:
<drive>\<path>\sqlbrowser.exe -c
Sicherheit
Der SQL Server-Browser-Dienst ist entscheidend für die Erleichterung der Netzwerkkommunikation mit SQL Server-Instanzen.
Zu den Sicherheitsmaßnahmen für den SQL Server-Browser-Dienst gehören:
Konfigurieren von Firewalls, um den Datenverkehr zuzulassen.
Beschränkung des Zugriffs auf vertrauenswürdige IP-Adressen.
Regelmäßige Anwendung von Updates zur Behebung von Sicherheitslücken.
Darüber hinaus müssen Sie starke Authentifizierungs- und Autorisierungsrichtlinien implementieren, um nicht autorisierten Zugriff zu verhindern und die Integrität Ihrer SQL Server-Umgebung aufrechtzuerhalten.
Kontoberechtigungen
SQL Server-Browser lauscht an einem UDP-Port und nimmt nicht authentifizierte Anfragen über das SQL Server Resolution Protocol (SSRP) entgegen. SQL Server-Browser sollte im Sicherheitskontext eines Benutzers bzw. einer Benutzerin mit geringen Zugriffsrechten ausgeführt werden, um die Gefahr eines böswilligen Angriff zu minimieren. Das Anmeldekonto kann mithilfe von SQL Server-Konfigurations-Manager geändert werden.
Die Mindestbenutzerrechte für SQL Server-Browser sind:
- Zugriff vom Netzwerk auf diesen Computer verweigern
- Lokales Anmelden verweigern.
- Anmeldung als Batchauftrag verweigern.
- Anmelden über Terminaldienste verweigern
- Anmelden als Dienst.
- Lesen und schreiben der SQL Server-Registrierungsschlüssel, die sich auf die Netzwerkkommunikation beziehen (Ports und Pipes)
Standardkonto
Bei Setup wird SQL Server-Browser so konfiguriert, dass das Konto verwendet wird, das während des Setups für die Dienste ausgewählt wurde. Weitere mögliche Konten sind:
- Beliebige domain\local-Konten.
- Das Konto Lokaler Dienst.
- Das lokale Systemkonto (nicht empfohlen, da es über unnötige Berechtigungen verfügt).
SQL Server ausblenden
Bei ausgeblendeten Instanzen handelt es sich um Instanzen von SQL Server, die nur Shared Memory-Verbindungen unterstützen. Geben Sie für SQL Server das Flag HideInstance
an, um anzugeben, dass der SQL Server-Browser nicht mit Informationen zu dieser Serverinstanz antworten soll.
Verwenden einer Firewall
Um mit dem SQL Server-Browserdienst auf einem Server hinter einer Firewall zu kommunizieren, öffnen Sie den UDP-Port 1434
und den TCP/IP-Port, der von SQL Server verwendet wird (zum Beispiel 1433
). Informationen zum Arbeiten mit einer Firewall finden Sie unter Configure the Windows Firewall to allow SQL Server access.