Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do: SQL Server 2016 (13.x) i nowsze wersje
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Klasa zdarzenia Lock:Deadlock powstaje, gdy próba zdobycia blokady zostaje anulowana, ponieważ próba była częścią impasu i została wybrana jako ofiara deadlocka.
Użyj klasy zdarzeń Lock:Deadlock, aby monitorować, kiedy występują deadlocki i które obiekty są zaangażowane. Możesz wykorzystać te informacje, aby sprawdzić, czy blokady znacząco wpływają na wydajność Twojej aplikacji. Następnie możesz przeanalizować kod aplikacji, aby sprawdzić, czy możesz wprowadzić zmiany minimalizujące zaklenięcia.
Kolumny danych Lock:Deadlock Event Class
| Nazwa kolumny danych | Typ danych | Description | Identyfikator kolumny | Filtrowanie |
|---|---|---|---|---|
| ApplicationName | nvarchar | Nazwa aplikacji klienckiej, która utworzyła połączenie z wystąpieniem programu SQL Server. Ta kolumna jest wypełniana wartościami przekazywanymi przez aplikację, a nie wyświetlaną nazwą programu. | 10 | Tak |
| BinaryData | image | Blokuj identyfikator zasobu. | 2 | Tak |
| ClientProcessID | int | Identyfikator przypisany przez komputer hosta do procesu, w którym działa aplikacja kliencka. Ta kolumna danych jest wypełniana, jeśli identyfikator procesu klienta jest udostępniany przez klienta. | 9 | Tak |
| DatabaseID | int | Identyfikacja bazy danych, w której zamek był pozyskiwany. Program SQL Server Profiler wyświetla nazwę bazy danych, jeśli kolumna danych ServerName zostanie przechwycona w śladzie, a serwer jest dostępny. Określ wartość bazy danych przy użyciu funkcji DB_ID. | 3 | Tak |
| DatabaseName | nvarchar | Nazwa bazy danych, w której zamek był pozyskiwany. | 35 | Tak |
| Czas trwania | bigint | Czas (w mikrosekundach) między momentem wysłania żądania blokady a momentem wystąpienia martwy. | 13 | Tak |
| EndTime | datetime | Czas, w którym zakończył się impas. | 15 | Tak |
| EventClass | int | Typ zdarzenia = 25. | 27 | Nie. |
| Sekwencja zdarzeń | int | Sekwencja danego zdarzenia w żądaniu. | 51 | Nie. |
| GroupID | int | Identyfikator grupy obciążenia, w której jest uruchamiane zdarzenie śledzenia SQL. | 66 | Tak |
| Nazwa hosta | nvarchar | Nazwa komputera, na którym jest uruchomiony klient. Ta kolumna danych jest wypełniana, jeśli klient poda nazwę hosta. Aby określić nazwę hosta, użyj funkcji HOST_NAME. | 8 | Tak |
| IntegerData | int | Numer impasu. Numery są przypisywane od 0 podczas uruchamiania serwera i są zwiększane przy każdym martwym punkcie. | 25 | Tak |
| IntegerData2 | int | Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana. | 55 | Tak |
| IsSystem | int | Wskazuje, czy zdarzenie miało miejsce w procesie systemowym, czy w procesie użytkownika. 1 = system, 0 = użytkownik. | 60 | Tak |
| Nazwa logowania | nvarchar | Nazwa logowania użytkownika (albo SQL Server security login, albo dane logowania Microsoft Windows w formie DOMAIN\username). | 11 | Tak |
| LoginSid | image | Numer identyfikacyjny zabezpieczeń (SID) zalogowanego użytkownika. Informacje te znajdziesz w widoku katalogu sys.server_principals. Każdy identyfikator SID jest unikatowy dla każdego identyfikatora logowania na serwerze. | 41 | Tak |
| Mode | int | Tryb powstały po zablokowaniu. 0=NULL - Kompatybilny ze wszystkimi innymi trybami blokady (LCK_M_NL) 1=Blokada stabilności schematu (LCK_M_SCH_S) 2=Zamek modyfikacji schematu (LCK_M_SCH_M) 3=Współdzielony zamek (LCK_M_S) 4=Blokada aktualizacji (LCK_M_U) 5=Wyłączny zamek (LCK_M_X) 6=Zamek współdzielony na zamiar (LCK_M_IS) 7=Blokada aktualizacji zamiaru (LCK_M_IU) 8=Wyłączny zamek na zamiar (LCK_M_IX) 9=Udostępniono z zamiarem aktualizacji (LCK_M_SIU) 10=Udostępnione wyłącznie z intencją (LCK_M_SIX) 11=Aktualizacja z wyłącznym zamiarem (LCK_M_UIX) 12=Blokada aktualizacji masowej (LCK_M_BU) 13=Zakres kluczy współdzielony/współdzielony (LCK_M_RS_S) 14=Zakres kluczy udostępniony/aktualizowany (LCK_M_RS_U) 15=Wstaw zakresu kluczy NULL (LCK_M_RI_NL) 16=Wspólny wstaw zakresu kluczy (LCK_M_RI_S) 17=Aktualizacja zakresu kluczy (LCK_M_RI_U) 18=Ekskluzywne wstawianie w zakresie kluczy (LCK_M_RI_X) 19=Wyłączny zakres kluczy współdzielony (LCK_M_RX_S) 20=Ekskluzywna aktualizacja zakresu kluczy (LCK_M_RX_U) 21=Ekskluzywne w zakresie kluczy (LCK_M_RX_X) |
32 | Tak |
| NTDomainName | nvarchar | Domena systemu Windows, do której należy użytkownik. | 7 | Tak |
| NTUserName | nvarchar | Nazwa użytkownika systemu Windows. | 6 | Tak |
| Identyfikator obiektu | int | Identyfikacja obiektu będącego przedmiotem rywalizacji, jeśli jest dostępna i ma zastosowanie. | 22 | Tak |
| ObjectID2 | bigint | Identyfikator powiązanego obiektu lub podmiotu, jeśli jest dostępny i dotyczy. | 56 | Tak |
| OwnerID | int | 1=TRANSAKCJA 2=KURSOR 3=SESJA 4=SHARED_TRANSACTION_WORKSPACE 5=EXCLUSIVE_TRANSACTION_WORKSPACE |
58 | Tak |
| Identyfikator żądania | int | ID żądania zawierającego wyciąg. | 49 | Tak |
| NazwaSerwera | nvarchar | Nazwa śledzonego wystąpienia programu SQL Server. | 26 | Nie. |
| SessionLoginName | nvarchar | Nazwa logowania użytkownika, który utworzył sesję. Na przykład, jeśli połączysz się z SQL Server za pomocą Login1 i wykonasz polecenie jako Login2, SessionLoginName pokazuje Login1, a LoginName pokazuje Login2. W tej kolumnie są wyświetlane zarówno identyfikatory logowania programu SQL Server, jak i systemu Windows. | 64 | Tak |
| SPID | int | Identyfikator sesji, w której wystąpiło zdarzenie. | 12 | Tak |
| StartTime | datetime | Godzina rozpoczęcia wydarzenia, gdy był dostępny. | 14 | Tak |
| DaneTekstowe | ntext | Wartość tekstu zależała od typu zamka, który był pozyskiwany. | 1 | Tak |
| TransactionID | bigint | Przypisany przez system identyfikator transakcji. | 4 | Tak |
| Typ | int | 1=NULL_RESOURCE 2=BAZA DANYCH 3=PLIK 5=OBIEKT 6=STRONA 7=KLUCZ 8=ZASIĘG 9=RID 10=ZASTOSOWANIE 11=METADANE 12=AUTONAMEDB 13=HOBT 14=ALLOCATION_UNIT |
57 | Tak |
Zobacz też
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)