sys.dm_os_hosts (Transact-SQL)
Retorna todos os hosts registrados atualmente em uma instância de SQL Server. Esta exibição também retorna os recursos usados por esses hosts.
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
host_address |
varbinary(8) |
Endereço de memória interna do objeto de host. |
type |
nvarchar(60) |
Tipo de componente hospedado. Por exemplo, SOSHOST_CLIENTID_SERVERSNI= SQL Server Native Interface SOSHOST_CLIENTID_SQLOLEDB = SQL Server Native Client OLE DB Provider SOSHOST_CLIENTID_MSDART = Microsoft Data Access Run Time |
name |
nvarchar(32) |
Nome do host. |
enqueued_tasks_count |
int |
Número total de tarefas que o host colocou nas filas em SQL Server. |
active_tasks_count |
int |
Número de tarefas em execução atualmente que o host colocou nas filas. |
completed_ios_count |
int |
Número total de E/S emitidas e concluídas por meio deste host. |
completed_ios_in_bytes |
bigint |
Contagem total de bytes das E/S concluídas por meio deste host. |
active_ios_count |
int |
Número total de solicitações de E/S relacionadas a este host que neste momento está aguardando conclusão. |
default_memory_clerk_address |
varbinary(8) |
Endereço da memória do objeto de administrador de memória associado a este host. Para obter mais informações, consulte sys.dm_os_memory_clerks (Transact-SQL). |
Permissões
Requer permissão VIEW SERVER STATE no servidor.
Comentários
SQL Server permite que os componentes, como um provedor OLE DB, que não fazem parte de SQL Server executável, aloquem memória e participem de programação não-preemptiva. Esses componentes são hospedados por SQL Server, e todos os recursos alocados por eles são controlados. A hospedagem permite que SQL Server possa cuidar mais dos recursos usados por componentes externos para o SQL Server executável.
Cardinalidades da relação
De |
Para |
Relação |
---|---|---|
sys.dm_os_hosts. default_memory_clerk_address |
sys.dm_os_memory_clerks. memory_clerk_address |
um para um |
sys.dm_os_hosts. host_address |
sys.dm_os_memory_clerks. host_address |
um para um |
Exemplos
O exemplo seguinte determina a quantidade total de memória confirmada por um componente hospedado.
SELECT h.type, SUM(single_pages_kb + multi_pages_kb) AS commited_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;