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

Nazwa instancji

Termin Definicja
Nazwa instancji

Nazwa instancji to identyfikator wystąpienia SQL Server, podawany po nazwie serwera dla instancji nazwanych.

Jak działa nazwa instancji w SQL Server

Nazwa instancji w Microsoft SQL Server jest identyfikatorem konkretnego wystąpienia aparatu bazodanowego uruchomionego na serwerze. W przypadku instancji nazwanej zapis połączenia ma zwykle postać NAZWA_SERWERA\NAZWA_INSTANCJI, na przykład DB-SRV\MAGAZYN. Pierwszy człon wskazuje komputer lub adres sieciowy, a drugi określa instancję SQL Server działającą na tym komputerze. Sama nazwa instancji nie jest nazwą bazy danych, tabeli ani użytkownika.

SQL Server może działać jako instancja domyślna albo jako instancja nazwana. Instancja domyślna ma stały identyfikator usługi MSSQLSERVER i w adresie połączenia zazwyczaj nie wymaga dopisywania nazwy instancji: klient łączy się z użyciem samej nazwy serwera, na przykład DB-SRV. Instancja nazwana ma własną nazwę wybraną podczas instalacji, na przykład MAGAZYN, dlatego klient musi wskazać ją po ukośniku odwrotnym.

Instancja domyślna i instancja nazwana na jednym komputerze

Na jednym systemie Windows można uruchomić instancję domyślną oraz jedną lub kilka instancji nazwanych SQL Server. Każda instancja ma oddzielną usługę aparatu bazodanowego, własne bazy systemowe, ustawienia oraz listę baz użytkownika. W praktyce pozwala to utrzymywać niezależne środowiska, jednak każda instancja zużywa zasoby procesora, pamięci RAM i dysku, a jej konfigurację trzeba analizować osobno.

Dla instancji nazwanej usługa aparatu ma nazwę w formacie MSSQL$NazwaInstancji, na przykład MSSQL$MAGAZYN. Dla instancji domyślnej używana jest usługa MSSQLSERVER. Ten zapis jest przydatny podczas sprawdzania stanu usług systemowych, konfiguracji uruchamiania oraz logów SQL Server. Zatrzymanie jednej instancji nie musi zatrzymać pozostałych instancji działających na tym samym komputerze.

Nazwa instancji jest ustalana podczas instalacji i powinna być używana konsekwentnie w konfiguracji aplikacji, narzędziach administracyjnych oraz ciągach połączeń. Zmiana nazwy komputera, aliasu sieciowego lub adresu IP nie zmienia automatycznie nazwy instancji. Z kolei zmiana nazwy instancji nie jest zwykłą zmianą etykiety w systemie i może wymagać ponownej konfiguracji aplikacji korzystających z danego wystąpienia.

Rozpoznawanie instancji i wybór portu sieciowego

Połączenie z nazwą w formacie serwer\instancja wymaga od klienta ustalenia, gdzie dana instancja przyjmuje połączenia TCP. SQL Server Browser jest usługą, która pomaga klientom odnaleźć port przypisany do nazwanych instancji. Usługa nasłuchuje na porcie UDP 1434 i odpowiada na zapytania dotyczące instancji dostępnych na komputerze. Jeżeli SQL Server Browser jest wyłączony, zablokowany przez zaporę albo niedostępny w sieci, połączenie z samą nazwą instancji może się nie udać.

Instancja SQL Server może korzystać z portu statycznego albo dynamicznego. Przy porcie statycznym administrator przypisuje instancji konkretny port TCP, a klient może połączyć się bezpośrednio w zapisie NAZWA_SERWERA,PORT, na przykład DB-SRV,51433. Przecinek oznacza numer portu TCP i nie zastępuje ukośnika używanego do wskazania nazwy instancji. W przypadku portu dynamicznego numer może zostać przydzielony podczas uruchamiania usługi, dlatego poprawne działanie rozpoznawania nazwy zależy od konfiguracji SQL Server Browser albo od aliasu zawierającego konkretny port.

Podczas diagnostyki należy rozdzielić trzy elementy: istnienie usługi danej instancji, nasłuchiwanie protokołu TCP/IP oraz możliwość przejścia ruchu przez zaporę. Sam fakt, że instancja jest widoczna w narzędziu lokalnym, nie potwierdza dostępności z innego komputera. Weryfikacja powinna obejmować dokładny zapis nazwy serwera i instancji, aktywny adres nasłuchu, numer portu oraz reguły zapory obowiązujące na komputerze z SQL Server.

Znaczenie nazwy instancji podczas konfiguracji połączenia

Nieprawidłowa nazwa instancji może powodować komunikaty o braku możliwości odnalezienia serwera, przekroczeniu czasu oczekiwania albo odrzuceniu połączenia. W pierwszej kolejności warto sprawdzić, czy aplikacja wskazuje właściwy komputer i właściwą instancję, ponieważ na jednym serwerze mogą działać wystąpienia o podobnych nazwach, lecz z odrębnymi bazami danych. Następnie należy potwierdzić, że usługa aparatu dla tej instancji jest uruchomiona.

Jeżeli aplikacja korzysta z połączenia przez TCP, można przetestować konfigurację za pomocą pełnego adresu z numerem portu, na przykład tcp:DB-SRV,51433, pod warunkiem że 51433 jest rzeczywistym portem skonfigurowanym dla wskazanej instancji. Taki test omija etap wyszukiwania portu na podstawie nazwy instancji i pomaga ustalić, czy problem dotyczy rozpoznawania instancji, czy samej komunikacji sieciowej. Numer portu należy odczytać z konfiguracji SQL Server, a nie przyjmować na podstawie nazwy instancji.

Przy pracy lokalnej można użyć nazwy komputera, adresu localhost albo oznaczenia (local), ale wynik zależy od użytego dostawcy połączeń i włączonych protokołów. Dla instancji domyślnej zapis localhost może wskazywać domyślny aparat SQL Server, natomiast dla instancji nazwanej trzeba jawnie podać nazwę, na przykład localhost\MAGAZYN, albo użyć skonfigurowanego portu TCP. W razie niejednoznaczności najpewniejszym punktem odniesienia pozostają nazwa usługi, konfiguracja protokołów SQL Server oraz rzeczywisty port nasłuchu.

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