Witam, nazywam się Curt. Jestem starszym głównym inżynierem współpracującym z zespołem GSE.
Ten film wideo jest poświęcony omówieniu dziennika błędów programu SQL Server. Gdzie się znajduje, jakie informacje zawiera i dlaczego może nam pomóc w rozwiązywaniu problemów z Microsoft SQL Server.
Najszybszym sposobem uzyskania dostępu do dziennika jest skorzystanie z Microsoft SQL Server Management Studio.
Jeśli przejdziemy do kontenera "Management", a następnie w dół do "SQL Server Logs", zobaczymy dostępne dzienniki błędów, które SQL Server zebrał dla tej instalacji SQL.
SQL przechowuje sześć dzienników archiwum zdarzeń z przeszłości, które miały miejsce na serwerze. Bieżący dziennik to dziennik, który zbiera wszystkie informacje od ostatniego ponownego uruchomienia programu SQL Server, a dziennik błędów jest generowany ponownie przy każdym ponownym uruchomieniu programu SQL Server.
Przyjrzymy się bieżącemu dziennikowi, aby dać wam wyobrażenie o niektórych rzeczach, których możemy się tutaj spodziewać. Pierwszym elementem, który widzimy, jest typ instalacji programu SQL Server, w tym przypadku jest to program SQL Server 2019.
Daje nam również informacje o wersji produktu. W tym przypadku pracujemy z podstawową instalacją RTM SQL Server. Otrzymujemy również informacje o systemie operacyjnym.
W tym przypadku mamy do czynienia z instalacją systemu Windows 10 na stację roboczą. Poruszając się po dzienniku, zobaczysz, że najwcześniejsze zdarzenia są rejestrowane na dole dziennika, gdy się pojawiają, a najnowsze zdarzenia znajdują się w górnej części dziennika.
Przeglądając dziennik widzimy takie rzeczy, jak tryb uwierzytelniania, który jest mieszany, widzimy rzeczywistą lokalizację dziennika błędów - jest to domyślna lokalizacja dla plików programu dziennika błędów/serwera Microsoft SQL i folderu instalacyjnego dla samej instancji SQL.
Widzimy również informacje o koncie usługi, które zostało użyte do uruchomienia programu SQL Server. Innym wpisem, który może być ważny, są parametry uruchamiania, domyślna lokalizacja, którą SQL ma obecnie dla plików bazy danych, a także lokalizacja dziennika błędów po raz kolejny, a także pliki dziennika, które widzimy dla SQL Server.
Otrzymujemy również informacje o rdzeniach systemu, liczbie dostępnych procesorów, z których SQL może korzystać, a także ilości dostępnej pamięci, którą SQL widzi na poziomie fizycznym podczas uruchamiania systemu.
Inne informacje, które następują poniżej, to baza danych systemu, która przechodzi do trybu online, jeśli mamy produkcyjne bazy danych użytkowników, widzimy również te informacje, ale najbardziej godną uwagi rzeczą w dzienniku błędów serwera SQL i jego największą zaletą jest zwracanie informacji o błędach, które są widoczne dla serwera SQL.
Może to być nie tylko czas uruchomienia, ale przez cały okres działania usługi. Mamy tu błąd, który jest dość nieistotny, ale odnosi się do Polybase, konfiguracji Polybase w systemie.
W rzeczywistości rozwiązanie Polybase nie zostało zainstalowane z tym, nie ma żadnych informacji o konfiguracji Polybase, więc ponownie nie stanowi problemu z tą instalacją, ale jest to przykład komunikatu, który widzimy jako błąd.
Teraz zajmiemy się bardziej szczegółowymi informacjami na temat tego, gdzie dziennik błędów może być niezwykle przydatny, na przykład gdy SQL Server się nie uruchamia.
Ten konkretny dziennik jest poprzednim dziennikiem, który miałem w bieżącym dzienniku, a SQL Server w tej próbie uruchomienia w rzeczywistości się nie uruchomił.
Jest to błąd wyprodukowany, a sposób, w jaki go wyprodukowałem, polegał na przeniesieniu lokalizacji bazy danych modelu, która jest bazą danych systemu.
Jest to baza danych szablonów dla wszystkich baz danych utworzonych przez SQL Server. Po uruchomieniu SQL Server musi zostać uruchomiony i użyć bazy danych tempdb, a baza danych modelu jest szablonem dla tempdb.
Tak więc bez bazy danych modelu nie można uruchomić bazy danych tempdb lub nie można przejść do trybu online, a usługa SQL Server nie może się uruchomić.
Oto przykład tego, co możemy zobaczyć w dzienniku błędów. Zobaczymy błąd, zobaczymy więcej informacji o tym, dlaczego błąd został wygenerowany — w tym przypadku nie można znaleźć pliku bazy danych, pliku bazy danych modelu — a później poinformuje nas, że nie można znaleźć pliku dziennika bazy danych modelu, co oznacza, że nie można utworzyć bazy danych tempdb.
To zła wiadomość, że dziennik błędów może wrócić, aby dostarczyć informacji o sposobie rozwiązania problemu.
Musimy teraz pamiętać, że gdy zobaczymy wpis dotyczący takiego błędu, zostanie on również uwzględniony w dziennikach aplikacji.
Widzimy więc dokładnie to samo zdarzenie rejestrowane w dzienniku aplikacji systemowej, a pierwszy komunikat o błędzie informuje, że plik bazy danych nie został znaleziony, a drugi informuje, że plik dziennika nie został znaleziony.
Jest to więc kolejny sfabrykowany przykład awarii, który może być bardzo krytyczny, jeśli rozwiązujesz rzeczywisty problem.
Jeśli na przykład główny plik bazy danych jest uszkodzony, taki jak baza danych modelu, usługa SQL nie zostanie uruchomiona i jest to obszar, w którym uzyskasz informacje, aby dowiedzieć się więcej na ten temat i rozwiązać problem.
Tyle o zawartości dziennika błędów. Możemy również uzyskać dostęp do dzienników błędów na żywo w eksploratorze plików. I po raz kolejny musimy znać lokalizację pliku dziennika błędów, widzieliśmy to w samym dzienniku błędów.
Wiemy, że znajduje się on w domyślnej lokalizacji dziennika błędów i znajduje się w katalogu dziennika dla tej instalacji SQL Server.
Wyświetlaj zawsze te same informacje – mamy do wyboru edytor tekstu, za pomocą którego chcesz je wyświetlić. Po raz kolejny widok jest inny.
W tym miejscu najwcześniejsze zdarzenia znajdują się na górze dziennika, gdy spojrzysz na sam nieprzetworzony dziennik, a najnowsze znajdują się na dole.
Istnieje jeszcze jeden sposób na znalezienie lokalizacji dziennika błędów, a mianowicie przejście do instalacji programu z menu Start dla tej instancji SQL Server.
Po przejściu do tego miejsca przechodzimy do "SQL Server Configuration Manager". Configuration Manager wyświetla wszystkie usługi dla tej instalacji SQL.
Jeśli przejdziemy do "SQL Server Service", kliknij prawym przyciskiem myszy, przejdź do "Właściwości", "Parametry uruchamiania", parametr "-e" to miejsce, w którym znajduje się dziennik błędów.
Czasami bardzo ważne jest, aby to zrozumieć, ponieważ możesz nie mieć instalacji Studio Management, na którą możesz spojrzeć.
Jeśli nie, musisz zacząć myśleć o wszystkich możliwych lokalizacjach dysków, które są dostępne dla tej konkretnej instalacji SQL.
Wiele razy możesz po prostu przejść do sedna, przejść do Configuration Manager, znaleźć te parametry uruchamiania, a kiedy to zrobisz, możesz dowiedzieć się dokładnie, gdzie znajduje się ten dziennik błędów.
Na tym kończymy nasze spojrzenie na dziennik błędów SQL Server. Mam nadzieję, że ten film pomógł Ci zrozumieć, gdzie znaleźć dziennik i jak może on pomóc w rozwiązywaniu problemów z programem Microsoft SQL Server.
Dziękuję za uwagę i do widzenia.