Você está na página 1de 2

13/1/2011 Google Tradutor

KILL
SQL Server 2000

Finaliza um processo de usuário baseado no processo do sistema ID (SPID) ou de trabalho (UOW). Se o SPID especificado ou UOW tem muito trabalho para desfazer
o comando KILL pode levar algum tempo para ser concluída, particularmente quando envolve a reversão de uma transação longa.

No Mic rosoft ® SQL Server ™ 2000, KILL pode ser usado para encerrar uma c onexão normal, que termina internamente as transações associadas c om o SPID dado.
Além disso, o comando também pode ser usado para encerrar todas as transações distribuída órfã quando o Microsoft Distributed Transaction Coordinator (MS DTC)
está em uso. Uma transação distribuída é órfão quando não está associado a nenhuma SPID atual.

Sintaxe

KILL {spid | UOW} [COM STATUSONLY]

Argumentos

spid

O sistema de identificação do proc esso (SPID) do processo para finalizar. O valor SPID é um número inteiro único (smallint) atribuída a cada conexão do usuário
quando a c onexão é feita, mas a tarefa não é permanente.

Utilização KILL SPID para encerrar os não-regulares eo transaç ões distribuídas distribuída assoc iada a uma SPID determinado.

UOW

Identifica a Unidade de Trabalho de identificação (UOW) da transação do DTC. UOW é uma cadeia de carac teres que podem ser obtidos a partir da tabela
syslockinfo, que dá a UOW para cada bloqueio mantido por uma transação do DTC. UOW também podem ser obtidas a partir do registro de erros ou através do
monitor do DTC. Para mais informaç ões sobre o c ontrolo das operações distribuídas, consulte o manual do usuário do MS DTC.

Use KILL UOW para finalizar órfãs transações do DTC, que não estão associadas a qualquer SPID real e em vez disso estão assoc iados artificialmente c om SPID = '-
2'. Para mais informaç ões sobre SPID = '-2', consulte a seç ão Comentários mais adiante neste tópic o.

COM STATUSONLY

Especifica que o SQL Server gerar um relatório de progresso sobre um spid dado ou UOW que está sendo revertida. O c omando KILL c om COM STATUSONLY não
c anc elar ou reverter o spid ou UOW. Isso só mostra o relatório de progresso atual.

Para o c omando KILL c om opç ão WITH STATUSONLY para gerar um relatório com suc esso, o spid ou UOW deve estar atualmente no estado de reversão. O relatório
de progresso indica o montante de reversão completa (em perc entagem) ea estimativa do tempo à esquerda (em segundos), da seguinte forma:

Spid|UOW < xxx> : Transaction rollback in progress. Estimated rollback completion: yy % Estimated time left: zz seconds.

Se a reversão da spid ou UOW foi c onc luída quando o c omando kill com a opção WITH STATUSONLY é executada, ou se não spid ou UOW está sendo revertida, o
KILL com COM STATUSONLY irá retornar o seguinte erro:

Status report cannot be obtained. KILL/ROLLBACK operator for Process ID|UOW <xxx> is not in progress.

O relatório de status mesmo pode ser obtido pela execuç ão de duas vezes o KILL spid | UOW c omando sem a opção WITH STATUSONLY, no entanto, isso não é
recomendado. A segunda execução do comando pode terminar um novo proc esso que pode ter sido atribuído ao SPID liberado.

Observações

KILL é comumente utilizado para encerrar um proc esso que está bloqueando outros processos importantes com bloqueios, ou para encerrar um processo que está
exec utando uma c onsulta que está usando os rec ursos de sistema necessários. Sistema de processos e processos em execução um procedimento armazenado
estendido não pode ser encerrado.

Use KILL com muito cuidado, principalmente quando os proc essos críticos estão em exec ução. Voc ê não pode matar o seu próprio processo. Outros proc essos não
matar são:

Aguardando o comando

CHECKPOINT SLEEP

LAZY WRITER

LOCK MONITOR

SELECT

Manipulador de sinal

sp_who Exec utar para obter um relatório sobre SPID valores válidos. Se uma reversão está em andamento para um SPID específico, a c oluna para o cmd SPID
específico no conjunto de resultados sp_who irá indic ar "mortas / ROLLBACK.

Use @ @ SPID para exibir o valor SPID para a sessão atual.

No SQL Server 2000, o c omando KILL pode ser usado para resolver SPIDs assoc iadas a transaç ões não distribuídos e distribuídos. KILL também pode ser usado para
resolver órfãs ou em dúvida transações distribuídas. Uma transaç ão distribuída é órfão quando não está associado a nenhuma SPID atual.

O valor SPID de '-2' é reservado como um indicador de conexão, ou órfão, transaç ões. O SQL Server atribui esse valor a todos transações distribuídas órfãs,
tornando mais fácil identific ar essas operações em sp_lock (coluna spid), sp_who (coluna blk), syslockinfo e sysprocesses. Esse recurso é útil quando uma
ligação particular tem um bloqueio no recurso de banco de dados e está bloqueando o progresso de uma transação. O usuário seria capaz de identificar o SPID que
possui o bloqueio, e terminar a ligação.

O comando KILL pode ser usado para resolver transacções em dúvida, que estão pendentes resultantes de transações distribuídas reinic ia não planejada do servidor
de banco ou coordenador DTC. Para obter mais informações sobre c omo resolver transações em dúvida, c onsulte Soluc ionando problemas de transaç ões do DTC .

Permissões

KILL padrão de permissões para os membros do sysadmin e processadmin funç ões de banco fixo, e não são transferíveis.

Exemplos

translate.google.com.br/translate?hl=p… 1/2
13/1/2011 Google Tradutor
A . Use o kill para encerrar um SPID

Este exemplo mostra como finalizar SPID 53.

KILL 53

B. Use KILL SP I D com STA TUSONLY para obt er um relatório de progresso.

Este exemplo gera um estado do processo de reversão para o SPID específico.

KILL 54 KILL 54 WITH STATUSONLY --This is the progress report. spid 54: Transaction rollback in progress. Estimated rollback completion: 80% Est

C. Use o kill para encerrar uma t ransação dist ribuída órf ã.

Este exemplo mostra como finalizar uma transaç ão órfã (SPID = -2) com UOW = D5499C66-E398-45Ca-BF7E-DC9C194B48CF.

KILL 'D5499C66-E398-45CA-BF7E-DC9C194B48CF'

translate.google.com.br/translate?hl=p… 2/2

Você também pode gostar