문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

sys.dm_exec_query_resource_semaphores(Transact-SQL)

현재 쿼리 리소스 세마포 상태에 대한 정보를 반환합니다. sys.dm_exec_query_resource_semaphores는 일반적인 쿼리 실행 메모리 상태를 제공하며 이를 통해 시스템이 충분한 메모리에 액세스할 수 있는지 여부를 확인할 수 있습니다. 이 뷰는 sys.dm_os_memory_clerks에서 가져온 메모리 정보를 보완하여 서버 메모리 상태의 전체 현황을 보여 줍니다. sys.dm_exec_query_resource_semaphores는 일반 리소스 세마포와 작은 쿼리 리소스 세마포에 대해 각각 하나의 행을 반환합니다.

열 이름

데이터 형식

설명

resource_semaphore_id

smallint

리소스 세마포의 고유하지 않은 ID입니다. 일반 리소스 세마포의 경우 0을 반환하고 작은 쿼리 리소스 세마포의 경우 1을 반환합니다.

target_memory_kb

bigint

메모리 사용 대상(KB)을 부여합니다.

max_target_memory_kb

bigint

가능한 최대 대상(KB)입니다. 작은 쿼리 리소스 세마포의 경우 NULL이 됩니다.

total_memory_kb

bigint

리소스 세마포가 보유한 메모리(KB)입니다. 시스템 메모리가 부족하거나 강제 적용된 최소 메모리가 자주 부여되는 경우 이 값은 target_memory_kb 또는 max_target_memory_kb 값보다 클 수 있습니다. 총 메모리는 사용 가능한 메모리와 부여된 메모리의 합계입니다.

available_memory_kb

bigint

새 부여에 사용 가능한 메모리(KB)입니다.

granted_memory_kb

bigint

부여된 총 메모리(KB)입니다.

used_memory_kb

bigint

부여된 메모리 중에서 실제로 사용된 메모리(KB)입니다.

grantee_count

int

부여가 만족된 활성 쿼리 수입니다.

waiter_count

int

부여가 만족될 때까지 대기 중인 쿼리 수입니다.

timeout_error_count

bigint

서버 시작 후 시간 초과 오류의 총 수입니다. 작은 쿼리 리소스 세마포의 경우 NULL이 됩니다.

forced_grant_count

bigint

서버 시작 후 강제 적용된 최소 메모리 부여의 총 수입니다. 작은 쿼리 리소스 세마포의 경우 NULL이 됩니다.

pool_id

int

이 리소스 세마포가 속한 리소스 풀의 ID입니다.

서버에 대한 VIEW SERVER STATE 권한이 필요합니다.

쿼리에서 ORDER BY 또는 집계가 포함된 동적 관리 뷰를 사용하는 경우 메모리 사용이 증가하여 해결하려는 문제가 악화될 수 있습니다.

문제 해결을 위해 sys.dm_exec_query_resource_semaphores를 사용할 수 있지만 이후 버전의 SQL Server를 사용할 응용 프로그램에는 포함시키지 마십시오.

데이터베이스 관리자는 리소스 관리자 기능을 사용하여 서버 리소스를 최대 20개의 리소스 풀에 배치할 수 있습니다. SQL Server 2012에서 각 풀은 독립된 작은 서버 인스턴스와 같이 작동하며 2개의 세마포를 필요로 합니다.

커뮤니티 추가 항목

추가
표시: