Dlaczego używam sp_WhoIsActive

Bardzo często zachodzi potrzeba uzyskania informacji o bieżących sesjach i procesach zachodzących w silniku bazy danych. Zwykle do wyświetlania tych informacji występujących na instancji SQL Server  używa się  systemowych procedur składowanych sp_who i sp_who2. Za pomocą tych tych procedur można zidentyfikować sesje blokujące i aktywne. Oczywiście można do tych celów użyć dynamicznych widoków zarządzania (DMV) i dynamicznych funkcji zarządzania (DMF), aby uzyskać szczegółowe informacje o procesach SQL Server, waitach występujących w dostępie do  pamięci i procesora. Procedury systemowe sp_who i sp_who2 Używając Dowiedz się więcej…

Max worker threads dla PowerShell

Wykonujesz z poziomu kroku w zadaniu (Jobie – tak chyba lepiej brzmi) instrukcję Powershell. Jest ich dosyć dużo, ale spostrzegasz, że tylko dwa wątki są wykonywane są wykonywane a reszta czeka. Jest to spowodowane domyślną wartością Max_worker_threads dla PowerShell ustawioną na 2. W celu zmiany należy wykonać poniższy skrypt. Z select należy odczytać wartość subsystem_id, a następnie wstawić ją do drugiej części w UPDATE.

Ola Hallengren: Statistics Optimize – jak ?

Statistics Optimize – czy to nowa procedura wspaniałego pakietu Ola Hallengrena ? Nie, poniżej przedstawię jak można za pomocą procedury IndexOptimize można było wykonać aktualizację samych statystyk bez przebudowy indeksów. Tematem tym zajmował się Brent Ozar i po napisaniu emaila do Ola Hallengrena otrzymał taką odpowiedź: Cała sztuczka polega na zadeklarowaniu następujących zmiennych jako NULL:

Ola Hallengren: IndexOptimize

Procedura składowana IndexOptimize Poniżej za pomocą skryptu można wylistować wszystkie parametry procedury składowanej IndexOptimize. Na chwilę obecną można doliczyć się 35 parametrów, które można wykorzystać do konfiguracji procedury. W odpowiedzi dostajemy następującą listę: Poniżej opiszę większość parametrów. Pozwoli to na lepsze zrozumienie zasad działania procedury IndexOptymazie i stworzenie własnego rozwiązania. Istnieje możliwość zmiany wartości domyślnych dla każdego parametru wewnątrz procedury, ale nie jest to zalecane, ponieważ wpłynie to na każde wywołanie joba, który korzysta z tej procedury (np. IndexOptimize – USER_DATABASES). Powszechną Dowiedz się więcej…

Kilka słów o skryptach utrzymaniowych Ola Hallengrena

Postanowiłem rozpocząć cykl kilku wpisów na temat skryptów utrzymaniowych stworzonych przez Ola Hallengrana. Od kilku lat używam je i stwierdzam, że z powodzeniem zastępują Maintenance Plany dostępne z poziomu SSMS. Ola Hallengren jest MVP Microsoft Data Platform mieszkającym w Szwecji. Opracował on najlepsze bezpłatne rozwiązanie do utrzymania i konserwacji dla SQL Server, które jest szeroko stosowane i akceptowane przez administratorów baz danych na całym świecie. Rozwiązanie opiera się na procedurach składowanych, które wykonują kopie zapasowe, sprawdzają integralność, utrzymują indeksy i statystyki we Dowiedz się więcej…

Jak wyłączyć napis „Completion time :”

Od jakiegoś czasu w SSMS po wykonaniu zapytania w zakładce Messages pojawia się napis: Completion time: 2021-09-17T08:45:39.1451539+01:00 Jest to czasem bardzo denerwujące. Aby wyłączyć takie zachowanie należy w menu w opcjach SSMS wejść na liście w pozycję Query Execution->SQL Server->Advenced. Tam po prawej stronie należy odznaczyć pozycję „Show completion time”.