MSSQL LOCK TIMEOUT 세션 타임아웃 설정 방법

MSSQL LOCK TIMEOUT 세션 타임아웃 설정 방법

MS SQL에서는 클라이언트 요청이 없는 상태로 SQL Server가 기다릴 수 있는 최대 시간을 @@LOCK_TIMEOUT 구성 함수로 설정할 수 있습니다. 기본 세팅값은 세션 타임 아웃이 설정되어 있지 않는데 실제로 운영 중인 SQL Server에서는 반드시 설정을 해야 됩니다. 보안상 취약하고 클라이언트 요청을 무제한(LOCK 발생)으로 기다릴 수 없겠죠.

그럼 세션 타임아웃 설정하는 방법 대해서 알아보죠.

포스트 기준

– Microsoft SQL Server 2019

– SSMS 18.10

세션 타임아웃 설정 방법

1. 세션 타임아웃 설정 확인

▶ 세션 타임아웃 설정하지 않은 경우 @@LOCK_TIMEOUT은 -1을 반환

SELECT @@LOCK_TIMEOUT AS [Lock Timeout]
세션 타임아웃 설정 확인


2. 세션 타임아웃 설정

▶ 구문(syntaxsql)

SET LOCK_TIMEOUT timeout_period

▶ 6분 설정 예제

-- 예) 10분(600000)
-- 밀리세컨드(1초 = 1000)
SET LOCK_TIMEOUT 600000
     
-- 세션 타임아웃 설정값 확인
SELECT @@LOCK_TIMEOUT AS [Lock Timeout]
세션 타임아웃 설정


이 글이 도움이 되셨다면 공유를 부탁드립니다. 다음 글에서 뵙겠습니다!

위로 스크롤