Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

SQL Server Browser

Termin Definicja
SQL Server Browser

SQL Server Browser to usługa umożliwiająca klientom odnalezienie instancji nazwanych nasłuchujących na portach dynamicznych.

Rola usługi SQL Server Browser w odnajdywaniu instancji

SQL Server Browser to usługa systemu Microsoft SQL Server, która pomaga klientom odnaleźć konkretną instancję serwera uruchomioną na danym komputerze. Jest szczególnie istotna wtedy, gdy używana jest instancja nazwana, na przykład NAZWA-KOMPUTERA\INSTANCJA, a silnik bazy danych nie korzysta ze stałego, powszechnie znanego portu. Klient może wysłać zapytanie do usługi Browser, aby uzyskać informacje potrzebne do nawiązania połączenia.

Usługa nie jest samym silnikiem bazy danych i nie przechowuje danych aplikacji. Jej zadaniem jest udostępnianie informacji o instancjach SQL Server działających na komputerze, między innymi o protokole komunikacyjnym oraz porcie, na którym dana instancja oczekuje na połączenia. Dzięki temu program kliencki nie musi znać portu przypisanego do instancji nazwanej przed rozpoczęciem próby połączenia.

Zapytanie UDP na porcie 1434

SQL Server Browser nasłuchuje na porcie UDP 1434. Klient, który zna nazwę komputera, lecz nie zna portu określonej instancji nazwanej, może wysłać do tego portu zapytanie wykorzystujące protokół SQL Server Resolution Protocol, znany jako SSRP. Usługa odpowiada informacjami pozwalającymi ustalić, gdzie znajduje się wskazana instancja i jakiego rodzaju połączenie należy następnie otworzyć.

Po uzyskaniu odpowiedzi klient nawiązuje właściwe połączenie z silnikiem SQL Server, zwykle przez TCP na porcie zwróconym przez Browser. Port UDP 1434 służy więc do rozpoznania lokalizacji instancji, a nie do przesyłania zapytań SQL ani wyników zapytań. Zablokowanie tego portu przez zaporę sieciową może powodować, że połączenie przez nazwę instancji nie powiedzie się, mimo że sam silnik SQL Server działa prawidłowo i nasłuchuje na swoim porcie TCP.

Instancje nazwane, porty dynamiczne i konfiguracja połączenia

Domyślna instancja SQL Server jest zwykle kojarzona z nazwą komputera bez dodatkowego członu, natomiast instancja nazwana ma postać serwer\instancja. Instancja nazwana może być skonfigurowana do używania portu dynamicznego. W takim układzie numer portu może zostać ustalony przez usługę SQL Server podczas uruchamiania, dlatego klient korzystający wyłącznie z nazwy instancji potrzebuje mechanizmu rozpoznawania portu. Tę funkcję może zapewnić SQL Server Browser.

Alternatywą dla odnajdywania instancji przez Browser jest podanie portu bezpośrednio w parametrach połączenia, na przykład w formie serwer,port. Takie rozwiązanie ogranicza zależność od usługi rozpoznawania, ale wymaga znajomości aktualnego portu i jego stabilnej konfiguracji. W praktyce problemy z połączeniem mogą wynikać z kilku niezależnych przyczyn: zatrzymania SQL Server Browser, wyłączonego protokołu TCP/IP dla instancji, nasłuchiwania silnika na innym porcie, niedostępności portu UDP 1434 albo blokady właściwego portu TCP.

Do sprawdzenia działania mechanizmu należy rozdzielić test odnajdywania instancji od testu samego połączenia z bazą. Fakt, że komputer odpowiada w sieci, nie potwierdza dostępności SQL Server Browser. Podobnie działający Browser nie gwarantuje, że silnik konkretnej instancji jest uruchomiony. Diagnostyka powinna obejmować stan usług, konfigurację SQL Server Configuration Manager, wpisy dziennika oraz reguły zapory dla portu UDP 1434 i portu TCP używanego przez daną instancję.

Objawy awarii i bezpieczna diagnostyka komunikacji

Typowym objawem problemu z SQL Server Browser jest błąd pojawiający się przy połączeniu z nazwą instancji, podczas gdy połączenie z użyciem jawnego numeru portu działa. Taki wynik wskazuje na problem w etapie rozpoznawania instancji, ale nie stanowi jeszcze dowodu, że przyczyną jest sama usługa Browser. Należy sprawdzić, czy nazwa instancji została wpisana poprawnie, czy klient używa właściwego dostawcy połączenia oraz czy komputer z SQL Server jest osiągalny z sieci.

Na komputerze z SQL Server można zweryfikować, czy usługa SQL Server Browser jest uruchomiona, a następnie sprawdzić konfigurację instancji i jej port nasłuchiwania. W środowisku sieciowym trzeba również przeanalizować reguły zapory po obu stronach komunikacji. Zapytanie do Browser wymaga dostępności UDP 1434, natomiast właściwe połączenie wymaga dostępu do portu TCP przypisanego do silnika. Otwieranie przypadkowych portów lub wyłączanie zapory bez rozpoznania przyczyny nie jest rzetelną metodą diagnostyczną.

SQL Server Browser ujawnia informacje o dostępnych instancjach, dlatego jego uruchomienie i dostępność sieciowa powinny wynikać z rzeczywistego sposobu korzystania z SQL Server. Jeżeli aplikacja zawsze łączy się z konkretnym, jawnie skonfigurowanym portem, usługa rozpoznawania może nie być potrzebna do tego połączenia. Jeżeli jednak aplikacja używa nazw instancji, jej zatrzymanie albo odcięcie portu UDP 1434 może bezpośrednio przerwać automatyczne odnajdywanie właściwego portu.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę