| Termin | Definicja |
|---|---|
| Wersje SSMS a zgodność SQL Server | Zgodność SSMS z wersją SQL Server dotyczy dostępności funkcji graficznych, nie samej możliwości połączenia. SSMS jako narzędzie klienckie, a nie wersja silnika SQL ServerSQL Server Management Studio, czyli SSMS, jest aplikacją uruchamianą po stronie administratora lub programisty. Sam program nie zawiera lokalnej instancji SQL Server, dlatego jego wersja nie zmienia wersji silnika działającego na serwerze. Wersję serwera określa zainstalowana instancja SQL Server, a nie numer SSMS widoczny w menu pomocy. Z tego powodu aktualizacja SSMS nie aktualizuje bazy danych, nie zmienia poziomu zgodności bazy i nie przeprowadza migracji instancji. W praktyce zgodność ma dwa oddzielne wymiary. Pierwszym jest możliwość nawiązania połączenia i wykonywania poleceń T-SQL. Drugim jest zakres funkcji dostępnych w interfejsie graficznym SSMS, takich jak kreatory, właściwości obiektów, projektanci tabel, konfiguratory zabezpieczeń czy narzędzia do zarządzania zadaniami agenta. Nowszy SSMS może zwykle łączyć się ze starszym SQL Server, ale nie każda funkcja jego interfejsu będzie dostępna dla starego silnika. Połączenie ze starszym SQL Server i ograniczenia sterownikaDo połączenia SSMS wykorzystuje protokoły i biblioteki klienckie obsługujące komunikację z SQL Server. Jeżeli instancja nasłuchuje pod właściwą nazwą, portem lub aliasem, a konto ma poprawne uprawnienia, nowszy program może otworzyć sesję ze starszym serwerem. Po ustanowieniu połączenia zapytania są wykonywane przez silnik serwera. SSMS przesyła tekst polecenia i odbiera wynik, więc podstawowe operacje, takie jak odczyt tabel, uruchamianie zapytań, tworzenie kopii zapasowej lub przeglądanie dzienników, nie wymagają identycznych numerów wersji po obu stronach. Niepowodzenie połączenia nie musi jednak oznaczać niezgodności wersji SSMS z SQL Server. Przyczyną może być wyłączony protokół TCP/IP, niedostępna usługa SQL Browser, błędna nazwa instancji, zapora sieciowa, nieprawidłowy port albo odrzucony tryb uwierzytelniania. Osobną klasę problemów stanowią szyfrowanie połączenia i negocjowanie TLS. Nowszy system lub sterownik może odrzucać stare algorytmy kryptograficzne, których wymaga nieaktualnie skonfigurowany serwer. W takim przypadku trzeba sprawdzić komunikat błędu, konfigurację certyfikatu, ustawienia szyfrowania oraz obsługiwane protokoły, zamiast automatycznie instalować starszą wersję SSMS. Różnice w Object Explorer, kreatorach i właściwościach obiektówNajbardziej widoczna różnica między wersjami SSMS dotyczy warstwy graficznej. Nowsza wersja programu może zawierać elementy interfejsu przeznaczone dla funkcji wprowadzonych w nowszych wydaniach SQL Server. Po połączeniu ze starszym silnikiem część pól może być ukryta, nieaktywna albo zwracać informację, że dana operacja nie jest obsługiwana. Dotyczy to między innymi właściwości baz danych, ustawień zabezpieczeń, opcji indeksów, konfiguracji zadań oraz kreatorów wykorzystujących metadane dostępne dopiero w nowych wersjach serwera. Object Explorer nie jest kompletną definicją funkcjonalności serwera. To tylko widok obiektów i ich właściwości pobieranych z konkretnej instancji. W przypadku rozbieżności między interfejsem a dokumentacją należy sprawdzić wersję silnika poleceniem Dobór wersji SSMS przy pracy z konkretną instancjąPrzy obsłudze starszego SQL Server warto używać aktualnego SSMS, jeżeli jego sterowniki, mechanizmy uwierzytelniania i wymagania systemowe są zgodne z używanym środowiskiem. Zapewnia to nowsze poprawki klienta, obsługę współczesnych metod logowania oraz aktualne formaty skryptów i kopii zapasowych. Jednocześnie przed wykonaniem operacji administracyjnej trzeba sprawdzić, czy dana funkcja jest wykonywana przez serwer, przez SSMS, czy przez dodatkowy komponent, na przykład SQL Server Agent, Integration Services albo narzędzie DACFx. Weryfikacja powinna obejmować próbne połączenie, odczyt wersji instancji, sprawdzenie uprawnień i uruchomienie konkretnej operacji na środowisku testowym. Jeżeli kreator zgłasza brak obsługi, tę samą czynność można często wykonać bezpośrednio poleceniem T-SQL właściwym dla danej wersji SQL Server. Nie należy jednak zakładać, że skrypt napisany dla nowszej wersji zadziała na starszym silniku: użyte widoki katalogowe, składnia, opcje indeksów i polecenia administracyjne muszą istnieć po stronie serwera. Przy problemach z laptopem lub komputerem PC, na którym SSMS nie uruchamia się poprawnie, zawiesza interfejs albo nie widzi instancji, Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, a także może pomóc ustalić, czy źródłem problemu jest system kliencki, sieć, sterownik czy konfiguracja SQL Server. |