Partilhar via


sys.sysprocesses (Transact-SQL)

Contém informações sobre os processos que estão em execução em uma instância do SQL Server. Eles podem ser processos do cliente ou processos do sistema. Para acessar sysprocesses, você deve estar no contexto do banco de dados master ou deve usar o nome de terceiro master.dbo.sysprocesses.

Observação importanteImportante

Esta tabela do sistema do SQL Server 2000 foi incluída como uma exibição para compatibilidade com versões anteriores. É recomendável usar as exibições do sistema do SQL Server atual. Para localizar uma ou mais exibições do sistema equivalentes, consulte Mapeando tabelas do sistema do SQL Server 2000 para exibições do sistema do SQL Server 2005. Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Nome da coluna

Tipo de dados

Descrição

spid

smallint

ID da sessão do SQL Server.

kpid

smallint

ID do thread do Windows.

blocked

smallint

ID da sessão que está bloqueando a solicitação. Se esta coluna for NULL, a solicitação não estará bloqueada ou as informações da sessão de bloqueio não estarão disponíveis (ou não podem ser identificadas).

-2 = O recurso de bloqueio pertence a uma transação distribuída órfã.

-3 = O recurso de bloqueio pertence a uma transação de recuperação adiada.

-4 = O ID da sessão do proprietário da trava de bloqueio não pôde ser determinado devido a transições internas de estado da trava.

waittype

binary(2)

Reservado.

waittime

bigint

Tempo de espera atual em milissegundos.

0 = O processo não está esperando.

lastwaittype

nchar(32)

Uma cadeia de caracteres que indica o nome do tipo de espera último ou atual.

waitresource

nchar(256)

Representação textual de um recurso de bloqueio.

dbid

smallint

ID do banco de dados usado atualmente pelo processo.

uid

smallint

ID do usuário que executou o comando. Excederá ou retornará NULL se o número de usuários e funções exceder 32.767.

cpu

int

Tempo de CPU cumulativo para o processo. A entrada é atualizada para todos os processos, independentemente da opção SET STATISTICS TIME ser ON ou OFF.

physical_io

bigint

Leituras e gravações de disco cumulativas para o processo.

memusage

int

Número de páginas no cache de procedimento que estão atualmente alocadas para este processo. Um número negativo indica que o processo está liberando memória alocada por outro processo.

login_time

datetime

Hora na qual um processo de cliente efetuou logon no servidor.

last_batch

datetime

Última vez que um processo de cliente executou uma chamada de procedimento armazenado remoto ou uma instrução EXECUTE.

ecid

smallint

ID do contexto de execução usado para identificar exclusivamente os subthreads que operam em nome de um único processo.

open_tran

smallint

Número de transações abertas para o processo.

status

nchar(30)

Status do ID do processo. Os valores possíveis são:

dormant = O SQL Server está redefinindo a sessão.

running = A sessão está executando um ou mais lotes. Quando são habilitados MARS (Vários Conjuntos de Resultados Ativos), uma sessão pode executar vários lotes. Para obter mais informações, consulte Usando MARS (vários conjuntos de resultados ativos).

background = A sessão está executando uma tarefa em segundo plano, tal como detecção de deadlock.

rollback = A sessão tem uma reversão de transação em andamento.

pending = A sessão está esperando que um thread de trabalho fique disponível.

runnable = A tarefa na sessão está na fila executável de um agendador enquanto aguarda para obter um quantum de tempo.

spinloop = A tarefa na sessão está esperando que um spinlock fique livre.

suspended = A sessão está esperando que um evento, tal como E/S, seja concluído.

sid

binary(86)

GUID (Identificador Global Exclusivo) do usuário.

hostname

nchar(128)

Nome da estação de trabalho.

program_name

nchar(128)

Nome do programa aplicativo.

hostprocess

nchar(10)

Número de ID do processo da estação de trabalho.

cmd

nchar(16)

Comando sendo executado atualmente.

nt_domain

nchar(128)

Domínio do Windows do cliente, se estiver usando Autenticação do Windows, ou uma conexão confiável.

nt_username

nchar(128)

Nome de usuário do Windows para o processo, se estiver usando Autenticação do Windows, ou uma conexão confiável.

net_address

nchar(12)

Identificador exclusivo atribuído para o adaptador de rede na estação de trabalho de cada usuário. Quando um usuário fizer o logon, esse identificador é inserido na coluna net_address.

net_library

nchar(12)

Coluna na qual a biblioteca de rede do cliente é armazenada. Todo processo de cliente entra em uma conexão de rede. As conexões de rede têm uma biblioteca de rede associada a elas que as permite estabelecer a conexão.

loginame

nchar(128)

Nome de logon.

context_info

binary(128)

Dados armazenados em um lote usando a instrução SET CONTEXT_INFO.

sql_handle

binary(20)

Representa o lote ou o objeto atualmente em execução.

Observação   Este valor é derivado do lote ou do endereço de memória do objeto. Esse valor não é calculado usando o algoritmo com base em hash do SQL Server.

stmt_start

int

Deslocamento inicial da instrução SQL atual para o sql_handle especificado.

stmt_end

int

Deslocamento final da instrução SQL atual para o sql_handle.

-1 = A instrução atual é executada até o final dos resultados retornados pela função fn_get_sql do sql_handle especificado.

request_id

int

ID da solicitação. Usado para identificar solicitações em execução em uma sessão específica.

Comentários

Se um usuário tiver permissão VIEW SERVER STATE no servidor, ele verá todas as sessões em execução na instância do SQL Server; caso contrário, verá apenas a sessão atual.

Consulte também

Referência

Funções e exibições de gerenciamento dinâmico relacionadas à execução (Transact-SQL)

Mapeando tabelas do sistema para exibições do sistema (Transact-SQL)

exibições de compatibilidade (Transact-SQL)