Lås: Låsningshändelseklass

Gäller för: SQL Server 2016 (13.x) och senare versioner Azure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Lock:Deadlock-händelseklassen uppstår när ett försök att få tag på ett lås avbryts eftersom försöket var en del av deadlocket och valdes som deadlock-offer.

Använd händelseklassen Lock:Deadlock för att övervaka när deadlocks uppstår och vilka objekt som är inblandade. Du kan använda denna information för att avgöra om deadlocks påverkar prestandan i din applikation avsevärt. Du kan sedan granska applikationskoden för att avgöra om du kan göra ändringar för att minimera deadlocks.

Lock:Deadlock Event Class Datakolumner

Namn på datakolumn Datatyp Description Kolumn-ID Filtrerbar
ApplicationName nvarchar Namnet på klientprogrammet som skapade anslutningen till en instans av SQL Server. Den här kolumnen fylls i med de värden som skickas av programmet i stället för programmets visade namn. 10 Yes
BinaryData image Lås resursidentifierare. 2 Yes
ClientProcessID int ID som tilldelats av värddatorn till den process där klientprogrammet körs. Den här datakolumnen fylls i om klientprocess-ID:t tillhandahålls av klienten. 9 Yes
DatabaseID int ID för databasen där låset hämtades. SQL Server Profiler visar namnet på databasen om datakolumnen ServerName samlas in i spårningen och servern är tillgänglig. Fastställa värdet för en databas med hjälp av funktionen DB_ID. 3 Yes
DatabaseName nvarchar Namnet på databasen där låset förvärvades. 35 Yes
Varaktighet bigint Tiden (i mikrosekunder) mellan det att låsbegäran utfärdades och att deadlocken inträffade. 13 Yes
EndTime datetime Tiden då dödläget upphörde. 15 Yes
EventClass int Typ av evenemang = 25. 27 Nej
Händelseföljd int Sekvensen av en given händelse inom begäran. 51 Nej
GroupID int ID för arbetsbelastningsgruppen där SQL Trace-händelsen utlöses. 66 Yes
värdnamn nvarchar Namnet på den dator där klienten körs. Denna datakolumn fylls i om klienten anger värdnamnet. För att bestämma värdnamnet, använd funktionen HOST_NAME. 8 Yes
IntegerData int Deadlock-nummer. Nummer tilldelas med start på 0 när servern startas och ökar för varje deadlock. 25 Yes
IntegerData2 int Identifieras endast i informationssyfte. Stöds inte. Framtida kompatibilitet garanteras inte. 55 Yes
IsSystem int Anger om händelsen inträffade i en systemprocess eller en användarprocess. 1 = system, 0 = användare. 60 Yes
Inloggningsnamn nvarchar Namnet på användarens inloggning (antingen SQL Server-säkerhetsinloggning eller Microsoft Windows-inloggningsuppgifterna i form av DOMÄN\användarnamn). 11 Yes
LoginSid image Säkerhetsidentifieringsnummer (SID) för den inloggade användaren. Du kan hitta denna information i sys.server_principals katalogvy. Varje SID är unikt för varje inloggning på servern. 41 Yes
Mode int Det resulterande läget efter deadlocken.

0=NULL - Kompatibel med alla andra låslägen (LCK_M_NL)

1=Schemastabilitetslås (LCK_M_SCH_S)

2=Schemamodifieringslås (LCK_M_SCH_M)

3=Delat lås (LCK_M_S)

4=Uppdateringslås (LCK_M_U)

5=Exklusivt lås (LCK_M_X)

6=Avsiktsdelat lås (LCK_M_IS)

7=Avsiktsuppdateringslås (LCK_M_IU)

8=Avsiktsexklusivt lås (LCK_M_IX)

9=Delad med avsikt att uppdatera (LCK_M_SIU)

10=Delad med avsikt exklusiv (LCK_M_SIX)

11=Uppdatering med avsikt exklusiv (LCK_M_UIX)

12=Bulkuppdateringslås (LCK_M_BU)

13=Nyckelintervall Delat/Delat (LCK_M_RS_S)

14=Nyckelintervall Delat/Uppdatering (LCK_M_RS_U)

15=Nyckelområde Infoga NULL (LCK_M_RI_NL)

16=Nyckelområdesinlägg delat (LCK_M_RI_S)

17=Uppdatering av nyckelomfång (LCK_M_RI_U)

18=Nyckelomfängsinsats exklusiv (LCK_M_RI_X)

19=Nyckelområde Exklusivt Delat (LCK_M_RX_S)

20=Exklusiv uppdatering av nyckelområdet (LCK_M_RX_U)

21=Exklusiv för nyckelutbudet (LCK_M_RX_X)
32 Yes
NTDomainName nvarchar Windows-domän som användaren tillhör. 7 Yes
NTUserName nvarchar Windows-användarnamn. 6 Yes
ObjectID (Objekt-ID) int ID för objektet som är aktuellt, om det finns tillgängligt och är tillämpligt. 22 Yes
ObjectID2 bigint ID för det relaterade objektet eller entiteten, om tillgängligt och tillämpligt. 56 Yes
OwnerID int 1=TRANSAKTION

2=MARKÖR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58 Yes
RequestID int ID:t för förfrågan som innehåller uttalandet. 49 Yes
Servernamn nvarchar Namn på den instans av SQL Server som spåras. 26 Nej
SessionLoginName nvarchar Inloggningsnamn för den användare som påbörjade sessionen. Till exempel, om du ansluter till SQL Server med Login1 och kör en sats som Login2, visar SessionLoginName Login1 och LoginName visar Login2. Den här kolumnen visar både SQL Server- och Windows-inloggningar. 64 Yes
SPID int ID för sessionen där händelsen inträffade. 12 Yes
StartTime datetime Tid då evenemanget startade, när det var möjligt. 14 Yes
TextData ntext Textvärdet beror på vilken låstyp som anskaffas. 1 Yes
TransactionID bigint Systemtilldelat ID för transaktionen. 4 Yes
Typ int 1=NULL_RESOURCE

2=DATABAS

3=FIL

5=OBJEKT

6=PAGE

7=NYCKEL

8=OMFATTNING

9=RID

10=TILLÄMPNING

11=METADATA

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57 Yes

Se även

sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)