| Termin | Definicja |
|---|---|
| Widok msdb.dbo.sysschedules | Widok msdb.dbo.sysschedules zawiera definicje harmonogramów wykorzystywanych przez zadania Agenta. Widok msdb.dbo.sysschedules — czym jest i do czego służyWidok Harmonogram może określać uruchomienie jednorazowe, cykliczne albo wykonywanie zadania w określonych dniach tygodnia, dniach miesiąca lub odstępach czasowych. Widok jest przydatny podczas przeglądu konfiguracji SQL Server Agent, analizy automatyzacji oraz sprawdzania, czy zapisane reguły odpowiadają zamierzonemu planowi pracy. Sam odczyt danych z tego widoku nie zmienia harmonogramów, dlatego dobrze nadaje się do diagnostyki i dokumentowania konfiguracji. W praktyce Widok msdb.dbo.sysschedules a powiązania z zadaniamiNajważniejszą cechą harmonogramów jest możliwość ich ponownego wykorzystania. Jeden harmonogram może być skojarzony z kilkoma zadaniami, a jedno zadanie może mieć więcej niż jeden harmonogram. Informację o samym opisie harmonogramu należy więc odczytywać razem z relacją pomiędzy harmonogramami i zadaniami. Do ustalenia, które zadania korzystają z określonego wpisu, używa się powiązanego widoku lub tabeli systemowej przeznaczonej do relacji zadań i harmonogramów, a nie wyłącznie danych z To rozdzielenie ma praktyczne znaczenie. Zmiana nazwy lub częstotliwości wspólnego harmonogramu może wpłynąć na kilka zadań jednocześnie. Z kolei utworzenie osobnego harmonogramu dla każdego zadania daje większą niezależność, ale utrudnia utrzymanie spójnych reguł. Przy analizie warto najpierw ustalić identyfikator harmonogramu, następnie sprawdzić jego powiązania, a dopiero później oceniać, czy konfiguracja jest prawidłowa. Widok można porównać do kalendarza, natomiast definicję zadania do instrukcji działania. Kalendarz mówi, kiedy coś ma się wydarzyć, lecz nie odpowiada na pytanie, jakie kroki zostaną wtedy wykonane. Historia uruchomień pokazuje natomiast, co faktycznie wydarzyło się w przeszłości. Te trzy obszary należy rozróżniać, ponieważ poprawny harmonogram nie gwarantuje poprawnego wykonania zadania, a brak wpisu w historii nie musi oznaczać, że harmonogram jest błędny. Widok msdb.dbo.sysschedules — typowe problemy z interpretacjąCzęstym problemem jest odczytywanie wartości częstotliwości jako zwykłego tekstu. W wielu kolumnach przechowywane są kody liczbowe, które dopiero w połączeniu z innymi polami opisują sens harmonogramu. Sam numer może oznaczać częstotliwość dzienną, tygodniową, miesięczną albo jednorazową, ale bez sprawdzenia pozostałych atrybutów nie powinien być podstawą do wniosku. Trudności powodują również godziny zapisane w postaci wartości liczbowych. Godzina rozpoczęcia lub zakończenia może być przechowywana jako liczba odpowiadająca zapisowi bez separatora, dlatego przed prezentacją użytkownikowi warto przekształcić ją do czytelnej postaci. Należy także zweryfikować, czy podany zakres czasu nie jest pusty, zerowy albo logicznie niespójny z częstotliwością. Inny przypadek to harmonogram, który istnieje w Warto zwrócić uwagę na różnicę pomiędzy harmonogramem włączonym a wyłączonym. Wyłączony wpis może wyglądać poprawnie pod względem częstotliwości, ale nie spowoduje uruchomienia zadania. Przy diagnozie trzeba zatem analizować zarówno definicję kalendarza, jak i stan aktywności. Należy też brać pod uwagę datę rozpoczęcia, datę zakończenia oraz ustawienia ograniczające okres obowiązywania. Widok msdb.dbo.sysschedules — praktyczne wskazówki diagnostyczneAnalizę najlepiej rozpocząć od pobrania ograniczonego zestawu kolumn potrzebnych do konkretnego pytania. Przydatne są między innymi identyfikator harmonogramu, jego nazwa, stan aktywności, typ częstotliwości, interwał, dni tygodnia, godzina rozpoczęcia i zakończenia oraz daty obowiązywania. Czytelna lista pozwala szybko wykryć duplikaty nazw, harmonogramy o podobnych parametrach i wpisy, których zakres czasowy już minął. Podczas porównywania konfiguracji pomiędzy środowiskami nie należy opierać się wyłącznie na identyfikatorze. Identyfikatory mogą zostać nadane w innej kolejności, dlatego bezpieczniejsze jest zestawienie nazwy, ustawień częstotliwości, czasu oraz relacji z zadaniami. Przed migracją warto przygotować opis oczekiwanego działania, a po migracji sprawdzić nie tylko obecność harmonogramu, lecz także rzeczywiste przypisanie i stan zadania. Zapytania diagnostyczne powinny być wykonywane z uprawnieniami pozwalającymi odczytać odpowiednie dane systemowe. Jeżeli wynik jest niepełny, przyczyną może być sposób filtrowania informacji, ograniczenia widoczności albo użycie niewłaściwego źródła. Dobrą praktyką jest zachowanie kopii wyniku kontrolnego przed zmianami konfiguracyjnymi i ponowne wykonanie tego samego zestawienia po zmianie. Nie zaleca się ręcznej modyfikacji tabel systemowych w celu poprawiania harmonogramów. Konfigurację powinno się zmieniać za pomocą obsługiwanych procedur, narzędzi administracyjnych lub skryptów przeznaczonych do zarządzania zadaniami i harmonogramami. Takie podejście ogranicza ryzyko niespójności pomiędzy wpisem harmonogramu, jego powiązaniami oraz pozostałymi elementami automatyzacji. Kiedy sprawdzić widok msdb.dbo.sysschedules w serwisieDo analizy warto wrócić wtedy, gdy zadanie nie uruchamia się o oczekiwanej porze, wykonuje się zbyt często, działa w niewłaściwe dni albo przestało działać po zmianie konfiguracji. Sprawdzenie Jeśli analiza wymaga sprawdzenia środowiska, zależności i skutków zmian, można zgłosić temat do Warszawskiego Pogotowia Komputerowego 24/7; naprawy są z reguły realizowane do 3 dni roboczych. Przed przekazaniem zgłoszenia warto przygotować nazwę zadania, nazwę harmonogramu, oczekiwany termin uruchomienia, rzeczywisty objaw oraz fragment wyniku odczytu, o ile nie zawiera danych poufnych. Tak zebrane informacje ułatwiają ocenę, czy przyczyną jest błędnie zdefiniowany harmonogram, nieaktualne powiązanie, wyłączony wpis czy problem występujący dopiero podczas wykonywania zadania. |