다음을 통해 공유


Lock:Timeout 이벤트 클래스

적용 대상: SQL Server

Lock:Timeout 이벤트 클래스는 다른 트랜잭션이 필요한 리소스에 대한 차단 잠금을 보유하고 있기 때문에 페이지와 같은 리소스에 대한 잠금 요청 시간이 초과되었음을 나타냅니다. 제한 시간은 @@LOCK_TIMEOUT 시스템 함수에 의해 결정되며 SET LOCK_TIMEOUT 문으로 설정할 수 있습니다.

Lock:Timeout 이벤트 클래스를 사용하여 시간 제한 조건이 발생하는 시기를 모니터링합니다. 이 정보는 제한 시간이 애플리케이션의 성능과 관련된 개체에 큰 영향을 미치는지 확인하는 데 유용합니다. 이러한 개체를 수정하는 애플리케이션 코드를 검사하여 제한 시간을 최소화하기 위해 변경할 수 있는지 확인할 수 있습니다.

지속 기간이 0인 Lock:Timeout 이벤트는 보통 내부 잠금 검색의 결과이며, 이는 반드시 문제를 나타내는 것은 아닙니다. Lock:Timeout(timeout > 0) 이벤트는 기간이 0인 시간 제한을 무시하는 데 사용할 수 있습니다.

Lock:Timeout 이벤트 클래스 데이터 열

데이터 열 이름 데이터 형식 Description 열 ID 필터 가능
ApplicationName nvarchar SQL Server 인스턴스에 대한 연결을 만든 클라이언트 애플리케이션의 이름입니다. 이 열은 표시된 프로그램 이름이 아닌 애플리케이션에서 전달되는 값으로 채워집니다. 10
BinaryData image 리소스 식별자를 잠급 수 있습니다. 2
ClientProcessID int 호스트 컴퓨터에서 클라이언트 애플리케이션이 실행 중인 프로세스에 할당된 ID입니다. 클라이언트가 클라이언트 프로세스 ID를 제공하는 경우 이 데이터 열이 채워집니다. 9
DatabaseID int 잠금 제한 시간을 초과한 데이터베이스의 ID입니다. SQL Server Profiler는 ServerName 데이터 열이 추적에 캡처되고 서버를 사용할 수 있는 경우 데이터베이스의 이름을 표시합니다. DB_ID 함수를 사용하여 데이터베이스의 값을 결정합니다. 3
DatabaseName nvarchar 제한 시간이 발생한 데이터베이스의 이름입니다. 35
기간 bigint 잠금 요청이 전달된 시간과 잠금 제한 시간이 초과된 시간 사이의 시간(밀리초)입니다. 13
EndTime 날짜/시간 이벤트가 끝난 시간입니다. 15
EventClass int 이벤트 유형 = 27. 27 아니요
EventSequence int 요청 내에서 지정된 이벤트의 시퀀스입니다. 51 아니요
GroupID int SQL Trace 이벤트가 발생하는 워크로드 그룹의 ID입니다. 66
HostName nvarchar 클라이언트가 실행 중인 컴퓨터의 이름입니다. 클라이언트에서 호스트 이름을 제공하는 경우 이 데이터 열이 채워집니다. 호스트 이름을 확인하려면 HOST_NAME 함수를 사용합니다. 8
IntegerData2 int 정보를 제공하기 위해서만 확인됩니다. 지원 안 됨. 향후 호환성은 보장되지 않습니다. 55
IsSystem int 시스템 프로세스 또는 사용자 프로세스에서 이벤트가 발생했는지 여부를 나타냅니다. 1 = system, 0 = user. 60
LoginName nvarchar 사용자의 로그인 이름입니다(SQL Server 보안 로그인 또는 DOMAIN\username 형식의 Microsoft Windows 로그인 자격 증명). 11
LoginSid image 로그인한 사용자의 SID(보안 ID 번호)입니다. 이 정보는 sys.server_principals 카탈로그 뷰에 있습니다. 각 SID는 서버의 각 로그인에 대해 고유합니다. 41
모드 int 제한 시간 초과 후의 결과 모드입니다.

0=NULL - 모든 잠금 모드와 호환(LCK_M_NL)

1=스키마 안정성 잠금(LCK_M_SCH_S)

2=스키마 수정 잠금(LCK_M_SCH_M)

3=공유 잠금(LCK_M_S)

4=업데이트 잠금(LCK_M_U)

5=배타 잠금(LCK_M_X)

6=내재된 공유 잠금(LCK_M_IS)

7=의도 업데이트 잠금(LCK_M_IU)

8=의도 배타 잠금(LCK_M_IX)

9=의도 업데이트 공유(LCK_M_SIU)

10=의도 배타적 공유(LCK_M_SIX)

11=의도 배타로 업데이트(LCK_M_UIX)

12=대량 업데이트 잠금(LCK_M_BU)

13=키 범위 공유/공유(LCK_M_RS_S)

14=키 범위 공유/업데이트(LCK_M_RS_U)

15=키 범위 삽입 NULL(LCK_M_RI_NL)

16=공유 키 범위 삽입(LCK_M_RI_S)

17=키 범위 삽입 업데이트(LCK_M_RI_U)

18=키 범위 삽입 배타적(LCK_M_RI_X)

19=키 범위 배타적 공유(LCK_M_RX_S)

20=키 범위 배타 업데이트(LCK_M_RX_U)

21=키 범위 배타적(LCK_M_RX_X)
32
NTDomainName nvarchar 사용자가 속한 Windows 도메인입니다. 7
NTUserName nvarchar Windows 사용자 이름입니다. 6
ObjectID int 사용 가능하고 적용 가능한 경우 시간 초과된 개체의 ID입니다. 22
ObjectID2 bigint 사용 가능하고 해당하는 경우 관련 개체 또는 엔터티의 ID입니다. 56
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58
RequestID int 문을 포함하는 요청의 ID입니다. 49
데이터 열이 추적에서 캡처되고 서버를 사용할 수 있으면 nvarchar 추적 중인 SQL Server 인스턴스의 이름입니다. 26 아니요
SessionLoginName nvarchar 세션을 시작한 사용자의 로그인 이름입니다. 예를 들어 Login1을 사용하여 SQL Server에 연결하고 Login2로 문을 실행하는 경우 SessionLoginName은 Login1을 표시합니다. LoginName은 Login2를 표시하는 동안 이 열에는 SQL Server 및 Windows 로그인이 모두 표시됩니다. 64
SPID int 이벤트가 발생한 세션의 ID입니다. 12
StartTime 날짜/시간 이벤트가 시작된 시간(사용 가능한 경우)입니다. 14
TextData ntext 시간 초과가 발생했을 때 획득된 잠금 유형에 따라 달라지는 텍스트 값입니다. 1
TransactionID bigint 트랜잭션의 시스템 할당 ID입니다. 4
Type int 1=NULL_RESOURCE

2=DATABASE

3=FILE

5=OBJECT

6=PAGE

7=KEY

8=EXTENT

9=RID

10=APPLICATION

11=메타데이터

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57

참고 항목

sp_trace_setevent(Transact-SQL)
Lock:Timeout(timeout > 0) 이벤트 클래스
sys.dm_tran_locks (Transact-SQL)