Klasa zdarzenia eskalację blokady:
Eskalację blokada: klasa zdarzenie wskazuje przekonwertowany blokada precyzyjny system blokada gruboziarnisty średnioziarnistego; na przykład blokada wiersza , jest konwertowany na obiekt blokada.Eskalacja klasa zdarzenie 60 identyfikator zdarzenie.
Kolumny danych klasy zdarzeń eskalację blokady:
Nazwa kolumny danych |
Typ danych |
Opis |
Identyfikator kolumny |
Czy umożliwia filtrowanie |
---|---|---|---|---|
ApplicationName |
nvarchar |
Nazwa aplikacji klient, który utworzył połączenie z wystąpienie SQL Server.To kolumna jest wypełniona wartości przekazanych przez aplikację, a nie wyświetlaną nazwę programu. |
10 |
Tak |
ClientProcessID |
int |
Identyfikator przypisany przez komputer-host do procesu, w którym jest uruchomiona aplikacja klient.Ta kolumna danych jest wypełniane, jeśli klient dostarcza klientowi przetworzyć identyfikatora. |
9 |
Tak |
DatabaseID |
int |
ID of the database in which the lock was acquired.SQL Server Profiler displays the name of the database if the ServerName data column is captured in the trace and the server is available.Należy określić wartość dla bazy danych przy użyciu funkcja DB_ID. |
3 |
Tak |
DatabaseName |
nvarchar |
Nazwa bazy danych, w którym wystąpił eskalacją. |
35 |
Tak |
EventClass |
int |
Typ zdarzenie = 60. |
27 |
Nie |
EventSubClass |
int |
Przyczyną eskalacja blokad: 0 - LOCK_THRESHOLD wskazuje instrukcja przekroczony próg blokada. 1 - MEMORY_THRESHOLD wskazuje instrukcja przekroczony próg pamięci. |
21 |
Tak |
EventSequence |
int |
Sekwencja danego zdarzenie w żądaniu. |
51 |
Nie |
GroupID |
int |
Identyfikator grupa obciążenia, gdy zdarzenie śledzenia SQL fires. |
66 |
Tak |
Nazwa hosta |
nvarchar |
Nazwa komputera, na którym działa klient.Ta kolumna danych jest wypełniane, jeśli klient dostarcza nazwę hosta.Aby określić nazwę hosta, należy użyć funkcja HOST_NAME. |
8 |
Tak |
IntegerData |
int |
HoBT blokada count.Liczba blokad dla HoBT na czas z eskalację blokada. |
25 |
Tak |
IntegerData2 |
int |
Przekazany blokada count.Całkowita liczba blokad, które zostały przekonwertowane.Te struktury blokada są cofniętych przydziałów, ponieważ są one już objęte escalated blokada. |
55 |
Tak |
IsSystem |
int |
Wskazuje, czy wystąpiło zdarzenie procesu systemowego lub proces użytkownika.1 = system, 0 = użytkownika. |
60 |
Tak |
LineNumber |
int |
Liczba linii Transact-SQL instrukcja. |
5 |
Tak |
LoginName |
nvarchar |
Nazwa logowania użytkownika (albo SQL Server logowania zabezpieczeń lub Microsoft poświadczenia logowania systemu Windows w postaci domena\nazwa_użytkownika). |
11 |
Tak |
LoginSid |
image |
Numer identyfikacyjny zabezpieczeń (SID) użytkownika zalogowanego.Można znaleźć te informacje w sys.server_principals wykazu widoku.Każdy identyfikator SID jest unikatowy dla każdego identyfikatora logowania na serwerze. |
41 |
Tak |
Tryb |
int |
Tryb blokada powstałe po Eskalacja: 0 = NULL - zgodne z wszystkich innych blokada trybów (LCK_M_NL) 1 = Stabilności schematu blokada (LCK_M_SCH_S) 2 = Zablokuj modyfikacji schematu (LCK_M_SCH_M) 3 = Blokadę (LCK_M_S) 4 = Blokada aktualizacji (LCK_M_U) 5 = Wyłączności (LCK_M_X) 6 = Blokadę konwersji (LCK_M_IS) 7 = Konwersji blokada aktualizacji (LCK_M_IU) 8 = Konwersji wyłączności (LCK_M_IX) 9 = Udostępnione z zamiarem aktualizacji (LCK_M_SIU) 10 = Udostępniane wyłącznie konwersji (LCK_M_SIX) 11 = Aktualizacji z wyłącznością konwersji (LCK_M_UIX) 12 = Blokada aktualizacji zbiorczej (LCK_M_BU) 13 = Zakres klucz udostępniony i udostępnione (LCK_M_RS_S) 14 = Zakres klucz udostępniony i aktualizacji (LCK_M_RS_U) 15 = Zakres klawisza Insert NULL (LCK_M_RI_NL) 16 = Wstaw zakres klucza udostępnionego (LCK_M_RI_S) 17 = Zakres klucz wstawienie, aktualizacja (LCK_M_RI_U) 18 = Zakres klawisza Insert wyłączności (LCK_M_RI_X) 19 = Udostępniony klucz zakres wyłączności (LCK_M_RX_S) 20 = Klucz zakres wyłącznych aktualizacji (LCK_M_RX_U) 21 = Klucz zakres wyłącznych wyłączności (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 |
Przypisane przez system identyfikator tabela, które eskalacja blokad został wyzwolony. |
22 |
Tak |
ObjectID2 |
bigint |
Identyfikator obiekt powiązanych lub obiekt.(Identyfikator HoBT, dla którego eskalacja blokad został wyzwolony.) |
56 |
Tak |
Przesunięcie |
int |
Początkowe przesunięcie z Transact-SQL instrukcja. |
61 |
Tak |
OwnerID |
int |
1 = TRANSAKCJI 2 = KURSORA 3 = SESJI 4 = SHARED_TRANSACTION_WORKSPACE 5 = EXCLUSIVE_TRANSACTION_WORKSPACE 6 = WAITFOR_QUERY |
58 |
Tak |
IdentyfikatorŻądania |
int |
Identyfikator żądania zawierające instrukcja. |
49 |
Tak |
Nazwa_serwera |
nvarchar |
Nazwa wystąpienie SQL Server śledzone. |
26 |
Nie |
SessionLoginName |
nvarchar |
Nazwa logowania użytkownika, który pochodzi z sesja.Na przykład, jeśli łączysz się z SQL Server za pomocą Login1 i wykonywanie instrukcja jako Login2, SessionLoginName pokazuje Login1 i LoginName zawiera Login2.To kolumna wyświetla zarówno SQL Server i logowania do systemu Windows. |
64 |
Tak |
SPID |
int |
Identyfikator sesja, na którym wystąpiło zdarzenie. |
12 |
Tak |
Godzina rozpoczęcia |
datetime |
Czas, jaką zdarzenie uruchomiona, jeśli są dostępne. |
14 |
Tak |
TextData |
ntext |
Tekst Transact-SQL instrukcja, która spowodowała eskalacja blokad. |
1 |
Tak |
Identyfikator transakcji |
bigint |
Identyfikator przypisany systemu transakcji. |
4 |
Tak |
Typ |
int |
ziarnistość eskalacji blokady: 1 = NULL_RESOURCE 2 = BAZY DANYCH 3 = PLIK 5 = Obiekt (poziom tabela) 6 = STRONA 7 = KLUCZ 8 = ZAKRES 9 = RID 10 = APLIKACJI 11 = METADANYCH 12 = HOBT 13 = ALLOCATION_UNIT |
57 |
Tak |
Przykłady
W poniższym przykładzie użyto sp_trace_create używa procedurę, aby utworzyć śledzenie, sp_trace_setevent dodać eskalacja blokad kolumn do śledzenia, a następnie używa sp_trace_setstatus do uruchomienia śledzenia.W sprawozdaniu, takich jak EXEC sp_trace_setevent @TraceID, 60, 22, 1, numer 60 wskazuje Eskalacja klasa zdarzenia, 22 wskazuje ObjectID kolumna, a 1 Ustawia zdarzenie śledzenia na.
DECLARE @RC int, @TraceID int
EXEC @rc = sp_trace_create @TraceID output, 0, N'C:\TraceResults'
-- Set the events and data columns you need to capture.
EXEC sp_trace_setevent @TraceID, 60, 1, 1 -- 1 = TextData
EXEC sp_trace_setevent @TraceID, 60, 12, 1 -- 12 = SPID
EXEC sp_trace_setevent @TraceID, 60, 21, 1 -- 21 = EventSubClass
EXEC sp_trace_setevent @TraceID, 60, 22, 1 -- 22 = ObjectID
EXEC sp_trace_setevent @TraceID, 60, 25, 1 -- 25 = IntegerData
EXEC sp_trace_setevent @TraceID, 60, 55, 1 -- 25 = IntegerData2
EXEC sp_trace_setevent @TraceID, 60, 57, 1 -- 57 = Type
-- Set any filter byusing sp_trace_setfilter.
-- Start the trace.
EXEC sp_trace_setstatus @TraceID, 1
GO
Teraz, śledzenia jest uruchomiony, należy wykonać instrukcje do śledzenia.Gdy ukończą, należy wykonać poniższy kod, aby zatrzymać, a następnie zamknij śledzenia.W tym przykładzie użyto fn_trace_getinfo funkcja, aby uzyskać traceid do sp_trace_setstatus instrukcji.
-- After the trace is complete.
DECLARE @TraceID int
-- Find the traceid of the current trace.
SELECT @TraceID = traceid
FROM ::fn_trace_getinfo(default)
WHERE value = N'C:\TraceResults.trc'
-- First stop the trace.
EXEC sp_trace_setstatus @TraceID, 0
-- Close and then delete its definition from SQL Server.
EXEC sp_trace_setstatus @TraceID, 2
GO
Zobacz także