적용 대상: 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 이상에 대한 사용 권한
서버에 대한 SERVER PERFORMANCE STATE 권한이 필요합니다 VIEW .
설명
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)