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

Wersje SSMS a wersje SQL Server

Termin Definicja
Wersje SSMS a wersje SQL Server

Nowsze wersje SSMS obsługują starsze instancje SQL Server, choć niektóre funkcje wymagają odpowiedniej wersji serwera.

Rozdzielenie wersji SSMS i silnika SQL Server

SQL Server Management Studio, czyli SSMS, jest narzędziem administracyjnym i diagnostycznym, a SQL Server jest właściwym silnikiem baz danych działającym jako usługa serwerowa. Te produkty mają odrębne numery wersji, cykle wydań i harmonogramy aktualizacji. Zainstalowanie nowszego SSMS nie oznacza więc automatycznej aktualizacji instancji SQL Server. Zmienia się aplikacja używana do łączenia z serwerem, natomiast baza danych, usługi silnika, konfiguracja instancji i przechowywane dane pozostają na dotychczasowej wersji serwera.

Nowsze wydania SSMS są projektowane z myślą o łączeniu zarówno z aktualnymi, jak i starszymi wersjami SQL Server. Zgodność nie jest jednak równoznaczna z pełną identycznością funkcji. SSMS może otworzyć połączenie ze starszą instancją, wyświetlić jej obiekty i wykonać zapytania Transact-SQL, ale elementy interfejsu przeznaczone dla nowszych możliwości serwera mogą być niedostępne, nieaktywne albo zwracać komunikat o braku obsługi.

Jak działa zgodność wsteczna narzędzia

Podczas łączenia SSMS rozpoznaje wersję silnika SQL Server oraz dostępne właściwości instancji. Część operacji jest realizowana przez standardowe zapytania i polecenia, które istnieją od wielu wydań, dlatego podstawowe zadania, takie jak przeglądanie baz, tabel, widoków, procedur składowanych i użytkowników, zwykle działają także przy starszym serwerze. Dotyczy to również uruchamiania zapytań w edytorze, o ile użyta składnia jest obsługiwana przez konkretną wersję silnika.

Problemy pojawiają się przy funkcjach zależnych od wersji. Nowszy SSMS może zawierać kreatory, widoki właściwości i polecenia przeznaczone dla funkcji wprowadzonych w późniejszym SQL Server. Jeżeli starsza instancja nie zna danego obiektu, widoku systemowego, parametru lub ustawienia, operacja zakończy się błędem albo dana opcja nie będzie dostępna. W drugą stronę zgodność nie działa automatycznie: starsze SSMS może nie rozpoznawać nowych funkcji nowszego serwera, nie prezentować wszystkich ustawień i nie obsługiwać zmian wprowadzonych w późniejszym wydaniu.

Przy ocenie zgodności trzeba odróżnić wersję programu SSMS od poziomu zgodności bazy danych. Poziom zgodności jest właściwością konkretnej bazy i wpływa przede wszystkim na zachowanie części składni oraz optymalizatora zapytań. Nie zmienia on wersji plików programu SSMS ani nie powoduje, że starszy silnik uzyskuje funkcje nowszej edycji SQL Server.

Weryfikacja połączenia i dostępnych funkcji

Podstawowym krokiem jest sprawdzenie obu wersji niezależnie. W SSMS można odczytać informacje o zainstalowanym narzędziu w oknie informacji o programie, natomiast wersję serwera można ustalić po połączeniu z instancją, korzystając z właściwości serwera albo zapytania Transact-SQL SELECT @@VERSION;. To zapytanie zwraca opis kompilacji silnika, edycji oraz systemu, na którym działa usługa. Przy dokładniejszej diagnostyce można także sprawdzić wartości funkcji SERVERPROPERTY, między innymi nazwę produktu, wersję produktu i poziom produktu.

Samo poprawne zalogowanie do instancji potwierdza jedynie możliwość ustanowienia połączenia i uwierzytelnienia. Nie potwierdza obsługi każdej funkcji dostępnej w interfejsie SSMS. Warto wykonać próbę na konkretnej operacji: otworzyć właściwości instancji, uruchomić wymagany kreator, odczytać plan wykonania albo wykonać zapytanie dotyczące danego mechanizmu. Jeżeli błąd dotyczy składni, należy sprawdzić, czy użyte polecenie istnieje w tej wersji SQL Server. Jeżeli problem występuje tylko w kreatorze lub panelu właściwości, przyczyną może być ograniczenie samego SSMS.

Znaczenie ma również dostosowanie narzędzia do sterowników i sposobu uwierzytelniania. SSMS korzysta z komponentów klienta potrzebnych do komunikacji z serwerem, dlatego nieudane połączenie może wynikać z błędnej nazwy instancji, niedostępnego protokołu sieciowego, zapory, nieprawidłowych danych logowania albo braku wymaganych metod uwierzytelniania. W takiej sytuacji zmiana SSMS na nowsze wydanie nie zawsze rozwiązuje problem, ponieważ przyczyna może znajdować się poza samym programem.

Znaczenie doboru wersji przy diagnostyce SQL Server

W środowisku, w którym trzeba obsługiwać starszą instancję SQL Server, nowsze SSMS jest zwykle praktycznym narzędziem do wykonywania podstawowych czynności administracyjnych, odczytu konfiguracji i analizy zapytań. Przed użyciem konkretnej funkcji należy jednak sprawdzić jej wymagania względem wersji silnika. Szczególnej ostrożności wymagają kreatory zmieniające konfigurację, funkcje bezpieczeństwa, mechanizmy wysokiej dostępności, narzędzia raportujące oraz operacje zależne od określonych wersji metadanych.

Przy diagnostyce warto zapisać pełny numer wersji SSMS, pełną wersję SQL Server, edycję silnika, poziom zgodności badanej bazy oraz dokładny komunikat błędu. Takie rozdzielenie pozwala ustalić, czy problem wynika z niezgodnej funkcji narzędzia, z ograniczeń starszego serwera, z ustawień bazy, czy z samego połączenia. Nie należy zakładać, że instalacja najnowszego SSMS naprawi błędy działania silnika SQL Server, ponieważ SSMS jest klientem administracyjnym i nie zastępuje aktualizacji serwera ani modyfikacji jego konfiguracji.

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