| Termin | Definicja |
|---|---|
| DAC (Dedicated Administrator Connection) | DAC (Dedicated Administrator Connection) to specjalne połączenie SQL Server umożliwiające dostęp do instancji nawet wtedy, gdy standardowe połączenia są niedostępne. DAC (Dedicated Administrator Connection) — czym jest i do czego służyDAC, czyli Dedicated Administrator Connection, to specjalny kanał administracyjny przeznaczony do awaryjnego połączenia z instancją Microsoft SQL Server. Jego zadaniem jest umożliwienie administratorowi uzyskania dostępu w sytuacji, gdy zwykłe połączenia użytkowników nie działają, logowanie trwa bardzo długo albo instancja reaguje z dużym opóźnieniem. Połączenie DAC jest obsługiwane inną, wydzieloną ścieżką niż standardowy ruch aplikacyjny, dzięki czemu można podjąć próbę rozpoznania problemu nawet przy znacznym przeciążeniu systemu. Nie jest to alternatywny sposób codziennej pracy z bazą ani mechanizm zwiększający wydajność zapytań. DAC należy traktować jako narzędzie ratunkowe dla uprawnionego administratora. Po uzyskaniu dostępu można sprawdzić stan wykonywanych poleceń, aktywne sesje, blokady, oczekiwania, obciążenie zasobów oraz komunikaty diagnostyczne. Pozwala to ustalić, czy źródłem problemu jest blokada transakcyjna, wyczerpanie zasobów, wadliwe zapytanie, awaria aplikacji czy nieprawidłowa konfiguracja. W praktyce DAC może działać lokalnie na komputerze, na którym pracuje SQL Server, a w odpowiednio skonfigurowanym środowisku także przez połączenie zdalne. Dostęp zdalny wymaga świadomego włączenia odpowiedniej funkcji i zapewnienia właściwych uprawnień. Sam fakt, że narzędzie jest przeznaczone do sytuacji awaryjnych, nie oznacza pominięcia kontroli dostępu. Do połączenia nadal potrzebne jest konto z uprawnieniami administracyjnymi. Znaczenie DAC w porównaniu ze standardowym połączeniemTypowe połączenie do SQL Server jest tworzone przez aplikację, narzędzie administracyjne albo usługę korzystającą z normalnego punktu dostępu instancji. Taki kanał obsługuje zwykłe logowanie, wykonywanie zapytań, odczyt danych i modyfikowanie obiektów. Jeżeli jednak instancja jest przeciążona, pula wątków została wyczerpana lub wiele sesji oczekuje na zwolnienie zasobów, standardowe połączenie może nie zostać ustanowione. DAC ma w takim przypadku odmienną rolę. Nie służy do obchodzenia blokad ani do wymuszania dostępu do danych bez autoryzacji, lecz do ograniczonej diagnostyki sytuacji krytycznej. Po zalogowaniu można wykonać zapytania systemowe i zebrać informacje potrzebne do dalszego postępowania. Zakres działań powinien być możliwie mały, ponieważ dodatkowe polecenia wykonywane podczas poważnego przeciążenia również zużywają zasoby. Ważną różnicą jest sposób korzystania z narzędzia. DAC powinno być uruchamiane tylko wtedy, gdy zwykła ścieżka administracyjna nie daje dostępu albo nie pozwala wiarygodnie ocenić przyczyny awarii. Do codziennego monitorowania, obsługi raportów i pracy aplikacji należy używać normalnych połączeń. Nie powinno się także traktować DAC jako zamiennika kopii zapasowych, monitoringu, planu odtwarzania ani poprawnie zaprojektowanej obsługi błędów. Po uzyskaniu dostępu przez DAC można między innymi ustalić, które sesje wykonują długotrwałe operacje, jakie zasoby są oczekiwane, czy występują blokady oraz czy problem dotyczy jednej bazy, całej instancji czy systemu operacyjnego. Wyniki takiej analizy mogą wskazać bezpieczne dalsze kroki, na przykład zakończenie konkretnej wadliwej sesji, ograniczenie źródła obciążenia albo przeprowadzenie kontrolowanego restartu po zabezpieczeniu danych i zebraniu informacji diagnostycznych. Typowe problemy, błędy i ograniczenia - DAC (Dedicated Administrator Connection)Jednym z częstszych błędów jest próba nawiązania DAC przy użyciu zwykłego narzędzia bez wskazania właściwego trybu połączenia. W zależności od używanego programu potrzebna jest odpowiednia składnia lub specjalna opcja administracyjna. W przypadku klienta wiersza poleceń stosuje się oznaczenie właściwe dla dedykowanego połączenia, natomiast w narzędziach graficznych sposób konfiguracji może wyglądać inaczej. Pominięcie tego ustawienia prowadzi do utworzenia zwykłej sesji, która przy przeciążonej instancji może zakończyć się błędem lub przekroczeniem czasu oczekiwania. Drugim problemem bywa brak uprawnień. DAC nie jest dostępne dla dowolnego użytkownika, ponieważ umożliwia wgląd w stan instancji i wykonywanie poleceń o istotnych skutkach administracyjnych. Jeżeli konto nie ma odpowiedniego poziomu dostępu, połączenie zostanie odrzucone niezależnie od poprawności adresu i parametrów logowania. Trzeba również odróżnić awarię samego SQL Server od problemu z siecią, zaporą, rozwiązywaniem nazw lub narzędziem klienckim. Jeśli połączenie ma być zdalne, przeszkodą może być wyłączona obsługa zdalnego DAC albo reguła zapory blokująca wymagany ruch. W takiej sytuacji lokalne połączenie administracyjne może działać, podczas gdy próba wykonana z innego komputera pozostanie nieskuteczna. Nieprawidłowe użycie DAC może pogorszyć sytuację. Uruchamianie ciężkich zapytań, odczytywanie dużych zakresów danych albo wielokrotne otwieranie sesji diagnostycznych zwiększa obciążenie instancji. Należy ograniczać się do krótkich zapytań systemowych, zapisywać wyniki i unikać działań, których skutków nie da się szybko przewidzieć. W przypadku blokad szczególną ostrożność trzeba zachować przed zakończeniem sesji, ponieważ przerwanie transakcji może uruchomić wycofywanie zmian i tymczasowo zwiększyć obciążenie. Problemy mogą wynikać także z błędnej interpretacji danych. Sama obecność długiego zapytania nie oznacza jeszcze, że jest ono przyczyną awarii. Należy uwzględnić czas jego rozpoczęcia, oczekiwany zasób, zależności między sesjami, stan dysków, pamięci i procesora oraz komunikaty zapisane w dziennikach. DAC dostarcza punktu wejścia do diagnostyki, ale nie zastępuje całościowej analizy. Kiedy najlepiej oddać urządzenie do diagnozy - DAC (Dedicated Administrator Connection)Do serwisu komputerowego warto zgłosić problem wtedy, gdy instancja SQL Server przestaje przyjmować zwykłe połączenia, aplikacja biznesowa nie może odczytać danych, a próby samodzielnego przywrócenia działania nie dają pewnego rezultatu. Szczególnej uwagi wymagają sytuacje, w których występują powtarzające się zawieszenia, blokady transakcji, błędy zapisu, nagłe rozłączenia albo niekontrolowane restarty. Przed podjęciem działań dobrze jest zachować komunikaty błędów, godziny wystąpienia problemu i informacje o zmianach wykonanych bezpośrednio przed awarią. Wsparcie techniczne może obejmować sprawdzenie dostępności instancji, weryfikację konfiguracji połączeń, analizę logów, ocenę blokad i oczekiwań oraz ustalenie, czy problem ma źródło w systemie, aplikacji, bazie danych lub sprzęcie. Jeżeli DAC jest dostępne, uzyskane za jego pomocą informacje mogą ułatwić przygotowanie bezpiecznej diagnozy. Jeżeli nie działa, nie należy wielokrotnie ponawiać przypadkowych prób ani usuwać plików systemowych bez kopii i planu odtworzenia. W warszawskim serwisie komputerowym naprawy są z reguły realizowane w ciągu do 3 dni roboczych, zależnie od rodzaju usterki i zakresu koniecznych prac. Warto wcześniej przekazać opis objawów, wersję używanego oprogramowania, informację o tym, czy problem dotyczy połączeń lokalnych czy zdalnych, oraz dane o ostatnich zmianach konfiguracyjnych. Tak przygotowane zgłoszenie ułatwia rozdzielenie problemu z DAC od szerszej awarii środowiska i ogranicza ryzyko pochopnych działań na działającej bazie. |