sys.dm_os_hosts(Transact-SQL)
적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)
SQL Server 인스턴스에 현재 등록된 모든 호스트를 반환합니다. 이 보기는 이러한 호스트에서 사용하는 리소스도 반환합니다.
참고 항목
Azure Synapse Analytics 또는 PDW(Analytics Platform System)에서 이를 호출하려면 이름 sys.dm_pdw_nodes_os_hosts 사용합니다. 이 구문은 Azure Synapse Analytics의 서버리스 SQL 풀에서 지원되지 않습니다.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
host_address | varbinary(8) | 호스트 개체의 내부 메모리 주소입니다. |
type | nvarchar(60) | 호스트된 구성 요소의 유형입니다. 예를 들면 다음과 같습니다. SOSHOST_CLIENTID_SERVERSNI= SQL Server 네이티브 인터페이스 SOSHOST_CLIENTID_SQLOLEDB = SQL Server Native Client OLE DB 공급자 SOSHOST_CLIENTID_MSDART = Microsoft Data Access 런타임 |
이름 | nvarchar(32) | 호스트의 이름입니다. |
enqueued_tasks_count | int | 이 호스트가 SQL Server의 큐에 배치한 총 작업 수입니다. |
active_tasks_count | int | 이 호스트가 큐에 배치한 현재 실행 중인 태스크의 수입니다. |
completed_ios_count | int | 이 호스트를 통해 발급되고 완료된 총 I/O 수입니다. |
completed_ios_in_bytes | bigint | 이 호스트를 통해 완료된 I/O의 총 바이트 수입니다. |
active_ios_count | int | 현재 완료 대기 중인 이 호스트와 관련된 총 I/O 요청 수입니다. |
default_memory_clerk_address | varbinary(8) | 이 호스트와 연결된 메모리 클럭 개체의 메모리 주소입니다. 자세한 내용은 sys.dm_os_memory_clerks(Transact-SQL)를 참조 하세요. |
pdw_node_id | int | 적용 대상: Azure Synapse Analytics, Analytics Platform System(PDW) 이 배포가 있는 노드의 식별자입니다. |
사용 권한
SQL Server 및 SQL Managed Instance에서는 VIEW SERVER STATE
권한이 필요합니다.
SQL Database Basic, S0 및 S1 서비스 목표 또는 탄력적 풀 내의 데이터베이스에 대해서는 서버 관리자 계정, Microsoft Entra 관리자 계정 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다. 다른 모든 SQL Database 서비스 목표에 대해서는 데이터베이스에 대한 VIEW DATABASE STATE
권한 또는 ##MS_ServerStateReader##
서버 역할의 멤버 자격이 필요합니다.
SQL Server 2022 이상에 대한 사용 권한
서버에 대한 VIEW SERVER PERFORMANCE STATE 권한이 필요합니다.
설명
SQL Server를 사용하면 SQL Server 실행 파일의 일부가 아닌 OLE DB 공급자와 같은 구성 요소가 메모리를 할당하고 선점되지 않는 일정 예약에 참여할 수 있습니다. 이러한 구성 요소는 SQL Server에서 호스트되며 이러한 구성 요소에 의해 할당된 모든 리소스가 추적됩니다. 호스팅을 사용하면 SQL Server가 SQL Server 실행 파일 외부의 구성 요소에서 사용하는 리소스를 더 잘 설명할 수 있습니다.
관계 카디널리
보낸 사람 | 수행할 작업 | 관계 |
---|---|---|
sys.dm_os_hosts. default_memory_clerk_address | sys.dm_os_memory_clerks. memory_clerk_address | 일대일 |
sys.dm_os_hosts. host_address | sys.dm_os_memory_clerks. host_address | 일대일 |
예제
다음 예에서는 호스팅된 구성 요소에서 커밋된 총 메모리 양을 확인합니다.
적용 대상: SQL Server 2012(11.x) 이상 |
SELECT h.type, SUM(mc.pages_kb) AS committed_memory
FROM sys.dm_os_memory_clerks AS mc
INNER JOIN sys.dm_os_hosts AS h
ON mc.memory_clerk_address = h.default_memory_clerk_address
GROUP BY h.type;
참고 항목
sys.dm_os_memory_clerks(Transact-SQL)
SQL Server 운영 체제 관련 동적 관리 뷰(Transact-SQL)