| 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 instancjiSQL 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 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 1434SQL 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łączeniaDomyślna instancja SQL Server jest zwykle kojarzona z nazwą komputera bez dodatkowego członu, natomiast instancja nazwana ma postać Alternatywą dla odnajdywania instancji przez Browser jest podanie portu bezpośrednio w parametrach połączenia, na przykład w formie 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 komunikacjiTypowym 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. |