Partilhar via


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;