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.
Das SQL ServerBrowser-Programm wird als Windows-Dienst ausgeführt. SQL Server-Browser lauscht auf eingehende Anforderungen für Microsoft SQL Server-Ressourcen und gibt Informationen zu auf dem Computer installierten SQL Server-Instanzen an. SQL Server-Browser unterstützt folgende Aktionen:
Durchsuchen einer Liste der verfügbaren Server
Herstellen einer Verbindung mit der richtigen Serverinstanz
Herstellen einer Verbindung zu dedizierten Administratorverbindungsendpunkten (DAC)
Für jede Instanz des Datenbankmoduls und SSAS stellt der SQL Server-Browserdienst (sqlbrowser) den Instanznamen und die Versionsnummer bereit. SQL Server-Browser wird mit SQL Server installiert.
Der SQL Server-Browser kann während des Setups oder mithilfe von SQL Server Configuration 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 Datenbank-Engine -Instanz, die alle Instanzen von SQL Server Express einschließt.
Beim Installieren einer benannten Instanz von Analysis Services.
Hintergrund
Vor SQL Server 2000 konnte nur eine Instanz von SQL Server auf einem Computer installiert werden. SQL Server lauschte auf eingehende Anforderungen an Port 1433, der SQL Server durch die Internet Assigned Numbers Authority (Behörde für die zugewiesenen Nummern des Internets, IANA) zugewiesen wurde. Nur eine Instanz von SQL Server kann einen Port verwenden. Wenn SQL Server 2000 die Unterstützung für mehrere Instanzen von SQL Server eingeführt hat, wurde also SQL Server Resolution Protocol (SSRP) entwickelt, um auf UDP-Port 1434 zu lauschen. Dieser Listenerdienst hat auf Anfragen von Clients mit den Namen der installierten Instanzen sowie den Ports oder benannten Pipes geantwortet, die von der Instanz genutzt werden. Um Einschränkungen des SSRP-Systems zu beheben, hat SQL Server 2005 den SQL Server-Browserdienst als Ersatz für SSRP eingeführt.
Funktionsweise des SQL Server-Browsers
Wenn eine Instanz von SQL Server gestartet wird, wenn das TCP/IP-Protokoll für SQL Server aktiviert ist, wird dem Server ein TCP/IP-Port zugewiesen. Wenn das Named Pipes-Protokoll aktiviert ist, hört SQL Server auf eine bestimmte benannte Pipe. Dieser Port oder "Pipe" wird von dieser bestimmten Instanz verwendet, um Daten mit Clientanwendungen auszutauschen. Während der Installation werden TCP-Port 1433 und Pipe \sql\query der Standardinstanz zugewiesen, aber diese können später vom Serveradministrator mithilfe von SQL Server Configuration Manager geändert werden. Da ein Port oder eine Pipe von nur jeweils einer Instanz von SQL Server verwendet werden kann, werden den benannten Instanzen einschließlich SQL Server Expressunterschiedliche Portnummern und Pipenamen zugewiesen. Wenn diese Option aktiviert ist, werden sowohl benannte Instanzen als auch SQL Server Express für die Verwendung dynamischer Ports konfiguriert, d. h. ein verfügbarer Port wird beim Starten von SQL Server zugewiesen. Bei Bedarf kann einer Instanz von SQL Server ein bestimmter Port zugewiesen werden. Bei der Verbindung können Clients einen bestimmten Port angeben; Wenn der Port jedoch dynamisch zugewiesen wird, kann sich die Portnummer jederzeit ändern, wenn SQL Server neu gestartet wird, sodass die richtige Portnummer für den Client unbekannt ist.
Beim Start startet der SQL Server-Browser und beansprucht UDP-Port 1434. Sql Server Browser liest die Registrierung, identifiziert alle Instanzen von SQL Server auf dem Computer und notiert die Ports und benannten Rohre, die sie verwenden. 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 ipv6 und ipv4.
Wenn SQL Server-Clients SQL Server-Ressourcen anfordern, sendet die Clientnetzwerkbibliothek über den Port 1434 eine UDP-Nachricht 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. Der SQL Server-Browser gibt keine Portinformationen für die Standardinstanz zurück.
Informationen zum Starten und Beenden des SQL Server-Browserdiensts finden Sie unter "Start", "Stop", "Pause", "Resume", "Restart the Database Engine", "SQL Server Agent" oder "SQL Server Browser Service".
Verwenden des SQL Server-Browsers
Wenn der SQL Server-Browserdienst nicht ausgeführt wird, können Sie weiterhin eine Verbindung mit SQL Server herstellen, wenn Sie die richtige Portnummer oder benannte Pipe angeben. Sie können beispielsweise eine Verbindung mit der Standardinstanz von SQL Server mit TCP/IP herstellen, wenn sie auf Port 1433 ausgeführt wird.
Wenn der SQL Server-Browserdienst jedoch nicht ausgeführt wird, funktionieren die folgenden Verbindungen nicht:
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\Instanzinformationen generiert oder übergibt, die später von anderen Komponenten zum erneuten Verbinden verwendet werden können.
Verbindung mit einer benannten Instanz ohne Angabe der Portnummer oder der Pipe.
DAC zu einer benannten Instanz oder der Standardinstanz, wenn nicht TCP/IP-Port 1433 verwendet wird.
Der OLAP-Umleitungsdienst.
Aufzählen von Servern in SQL Server Management Studio, Enterprise Manager oder Query Analyzer.
Wenn Sie SQL Server in einem Clientserverszenario verwenden (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 schreiben, um diese Portnummer immer zu verwenden. Dieser Ansatz birgt folgende Probleme:
Sie müssen Clientanwendungscode aktualisieren und verwalten, um sicherzustellen, dass sie eine Verbindung mit dem richtigen Port herstellt.
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.
Clusterbildung
DER SQL Server-Browser ist keine gruppierte Ressource und unterstützt kein Failover von einem Clusterknoten zum anderen. Daher sollte im Fall eines Clusters DER SQL Server-Browser für jeden Knoten des Clusters installiert und aktiviert werden. In Clustern lauscht der SQL Server-Browser auf IP_ANY.
Hinweis
Wenn Sie die Überwachung auf IP_ANY aktivieren, muss der Benutzer beim Aktivieren der Überwachung auf bestimmten IPs denselben TCP-Port für jede IP konfigurieren, da der SQL Server-Browser das erste IP/Port-Paar zurückgibt, das er findet.
Installieren, Deinstallieren und Ausführen über die Befehlszeile
Standardmäßig wird das SQL Server-Browserprogramm unter C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exeinstalliert.
Der SQL Server -Browserdienst wird deinstalliert, wenn die letzte Instanz von SQL Server entfernt wird.
Der SQL Server-Browser kann über die Eingabeaufforderung zur Fehlersuche mithilfe der Option -c gestartet werden.
<drive>\<path>\sqlbrowser.exe -c
Sicherheit
Kontoberechtigungen
Der SQL Server-Browser überwacht einen UDP-Port und akzeptiert nicht authentifizierte Anforderungen mithilfe des SQL Server Resolution Protocol (SSRP). Der SQL Server-Browser sollte im Sicherheitskontext eines Benutzers mit geringen Rechten ausgeführt werden, um die Gefährdung eines böswilligen Angriffs zu minimieren. Das Anmeldekonto kann mithilfe des SQL Server Configuration Manager geändert werden. Die Mindestbenutzerrechte für den SQL Server-Browser sind die folgenden:
Zugriff vom Netzwerk auf diesen Computer verweigern
Lokale Anmeldung verweigern
Anmelden als Batchauftrag verweigern
Anmeldung über Terminaldienste verweigern
Anmelden als Dienst
Lesen und Schreiben der SQL Server-Registrierungsschlüssel im Zusammenhang mit der Netzwerkkommunikation (Ports und Rohre)
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:
Beliebiges Domänen-\lokales Konto
Das lokale Dienstkonto
Das lokale Systemkonto (nicht empfohlen mit unnötigen Berechtigungen)
Ausblenden von SQL Server
Bei ausgeblendeten Instanzen handelt es sich um Instanzen von SQL Server, die nur Shared Memory-Verbindungen unterstützen. Legen Sie für SQL Server das HideInstance Flag fest, 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 zusätzlich zum von SQL Server verwendeten TCP-Port (z. B. 1433) UDP-Port 1434. Informationen zum Arbeiten mit einer Firewall finden Sie unter "How to: Configure a Firewall for SQL Server Access" in SQL Server Books Online.