Blog
SQL SERVER MANAGEMENT STUDIO (SSMS) - REGISTERED SERVERS
19/09/2023

SQL SERVER MANAGEMENT STUDIO (SSMS) - REGISTERED SERVERS

Z narzędzia Management Studio korzystał prawdopodobnie każdy, kto miał styczność z serwerami SQL firmy Microsoft. Kryje ono w sobie wiele tajemnic i "sztuczek", które postaramy się przedstawić w naszych artykułach.

Micrososft SQL Server Management Studio (SSMS) - Registered Servers i wykonywanie zapytania na kilku serwerach jednocześnie

Każdy z nas, kto miał do czynienia z bazami danych Microsoft SQL Server prawdopodobnie miał styczność z tym narzędziem 😊 Mowa oczywiście o Microsoft SQL Server Management Studio (SSMS). Dostarczane jest ono jako pojedynczy pakiet instalacyjny (do pobrania z oficjalnej strony Microsoftu), lub jako opcjonalny komponent wybierany podczas instalacji samego silnika SQL. Oprócz podstawowych funkcji takich jak łączenie się do serwerów lub puszczanie zapytań, ma ono jeszcze wiele innych przydatnych funkcji i „tricków”, które postaramy się przybliżyć w naszych artykułach 😉

W poniższym, porozmawiamy o „Registered Servers” oraz możliwości wykonania zapytania na wielu serwerach jednocześnie.


SKĄD DORWAĆ SSMS? 

Jeżeli nie macie jeszcze zainstalowanego u siebie Management Studio, a nie chcecie ściągać całego serwera SQL do instalacji, to możecie je pobrać korzystając z tego linka: https://learn.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16

Pod tym adresem będą również dostępne wskazówki do instalacji, wymagania systemowe, informacje dotyczące nowej wersji i tego, co nowego się w niej pojawiło.

 

 

REGISTERED SERVERS - KONIEC Z ZAPAMIĘTYWANIEM NAZW

Po odpaleniu SSMS po lewej stronie powinno pojawić się nam ‘dokowalne’ okienko o nazwie „Registered Servers”. To w nim będziemy dzisiaj działać 😊 Jeżeli się nie pojawiło lub przypadkowo je zamknęliście, zawsze można je przywrócić z menu „View” -> „Registered Servers”. Okienko możemy dowolnie przenosić w naszym obszarze roboczym, dostosowując w ten sposób nasze środowisko pracy 😉

Oczywiście jeżeli nie korzystaliśmy z niego wcześniej, będzie tu trochę pusto. Zaraz jednak to zmienimy.

Na sam początek warto zrobić sobie małą strukturę, w której będziemy organizować nasze zapisane serwery. W zależności od tego, czym się zajmujemy, możemy zrobić podział na serwery biorące udział w konkretnym rozwiązaniu / projekcie, lub też podzielić je na serwery produkcyjne, deweloperskie itd. Aby to zrobić, klikamy prawym przyciskiem myszy na „Local Server Groups” i wybieramy „New Server Group…”. Nadajemy nazwę i opcjonalnie opis i zatwierdzamy zmiany. Możemy oczywiście tworzyć sobie również podgrupy – zasada działania jest tutaj bardzo podobna do folderów plików w systemie operacyjnym 😉 Na potrzeby tego artykułu utworzyliśmy taką strukturę:

Teraz wypadałoby dodać jakieś serwery do naszej struktury – nic bardziej prostszego! Na wybranej przez nas grupie rozwijamy menu podręczne i wybieramy „New Server Registration…”.
W okienku wypełniamy nazwę serwera, rodzaj autentykacji jaką będziemy się do tego serwera łączyć. Możemy również wpisać „przyjazną” nazwę w polu „Registered server name:”, ale osobiście polecamy pozostawić je domyślne, czyli takie samo jak nazwa serwera. Na kolejnych zakładkach możemy ustalić specyficzne opcje łączenia się, akceptacji certyfikatu serwera. Jedna z opcji zasługuje na uwagę, mianowicie „Use custom color:” – dzięki niej możemy ustawić specyficzny kolor, który zostanie zastosowany na belce informacyjnej po połączeniu się do serwera. Jak możemy to wykorzystać? W ten sposób możemy oznaczyć serwery produkcyjne kolorem czerwonym, aby dodatkowo zwrócić naszą uwagę w momencie wykonywania skryptów na takim serwerze:

Poniżej prezentujemy naszą organizację przykładowych serwerów w grupy:

Oczywiście taką przygotowaną listę możemy sobie w łatwy sposób zapisać, aby mieć jej kopię lub udostępnić ją komuś innemu. Wystarczy kliknąć menu podręczne na „Local Server Groups” -> „Tasks” -> „Export…” i zapisać ją sobie do pliku. UWAGA: zalecamy zaznaczyć opcję „Do not include user names and passwords in the export file”, aby przypadkiem nie udostępnić komuś naszych zapisanych poświadczeń do serwerów 😉. Następnie taki plik możemy komuś udostępnić, aby podobną metodą został zaimportowany w innej instancji SSMS.

 

NO DOBRZE, JAK Z TEGO TERAZ KORZYSTA

To proste! Wystarczy wywołać menu podręczne na wybranym przez nas serwerze i wybrać interesującą nas pozycję – możemy np. połączyć się do serwera (kliknięcie podwójne na serwerze - pojawi się wówczas w okienku „Object Explorer”) lub otworzyć Query Editor bezpośrednio na tym serwerze. Możemy również szybko otworzyć logi serwera lub nawet zrestartować usługi serwera (choć nie polecamy robić tego na serwerach produkcyjnych, jeśli macie do takiej czynności uprawnienia :D


A CO Z TYM WYKONYWANIEM ZAPYTANIA NA WIELU SERWERACH? 
Właśnie dzięki zorganizowaniu serwerów w takie grupy wewnątrz „Registered Servers” dostajemy ciekawą możliwość wykonania jednego zapytania na wielu serwerach jednocześnie, bez potrzeby otwierania Query Editora dla każdego z nich osobno. Wszystko, co musimy zrobić, to wywołać menu podręczne na interesującej nas grupie (można również dla całej struktury, jeśli wybierzemy „Local Server Groups”) i wybrać interesującą opcję – np. „New Query”. Spowoduje to otwarcie kilku połączeń, ale wewnątrz jednego Query Editora:

Widzimy liczbę podłączonych serwerów oraz nazwę grupy, dla której wywołaliśmy wybraną opcję. Teraz możemy wpisać nasze zapytanie, które po wywołaniu przez F5 lub przycisk wykonania query, zwróci nam wyniki ze wszystkich serwerów, które mieliśmy w wybranej przez nas grupie:

Możliwości wykorzystania takiej funkcjonalności jest oczywiście bardzo dużo, więc ich wykorzystanie pozostawiamy Wam 😊 Uważajcie tylko, żeby nie „zdropować” baz w całej firmie 😉

Powrót do listy artykułów

{ Zobacz też }