Kill em todas a conexões de um banco

Olá pessoal,

Hoje vou postar um script que faz um kill em todas as conexões de uma database, que ajuda bastante quando você tem que fazer alguma ação no banco e você está sendo locado, ou quando você tem que fazer um restore e a base está em uso.

Lembrando que antes de dar um kill nas conexões é sempre bom alinhar com as áreas afins para não impactar processos importantes.

Declare @SpId as varchar(5)
select Cast(spid as varchar(5))SpId
into #Processos
from master.dbo.sysprocesses A
    join master.dbo.sysdatabases B on A.DbId = B.DbId
where B.Name ='NOMEDATABASE'

while (select count(*) from #Processos) >0
begin
    set @SpId = (select top 1 SpID from #Processos)
   exec ('Kill ' +     @SpId)
    delete from #Processos where SpID = @SpId
end

drop table #Processos

Até a próxima.

Deixe uma resposta