Dicas SQL Server

SQL Server – Cursor para matar todos os processos.

Dicas SQL Server

Veja um cursor para matar todos os processos no SQL Server.

Lembrando que quando você executar esse script, verifique em qual ambiente está executando. Use com moderação.

CREATE TABLE #tempwhois 
  ( 
     spid     INT, 
     ecid     INT, 
     status   VARCHAR(150), 
     loginame VARCHAR(150), 
     hostname VARCHAR(150), 
     blk      INT, 
     dbname   VARCHAR(150), 
     cmd      VARCHAR(150) 
  ) 

INSERT INTO #tempwhois 
EXEC Sp_who 

DECLARE @spid INT 
DECLARE @tString VARCHAR(15) 
DECLARE @getspid CURSOR 

SET @getspid = CURSOR 
FOR SELECT spid 
    FROM   #tempwhois 
    WHERE  dbname = 'mydb' 

OPEN @getspid 
FETCH next FROM @getspid INTO @spid 
WHILE @@FETCH_STATUS = 0 
  BEGIN 
      SET @tString = 'KILL ' + Cast(@spid AS VARCHAR(5)) 
      EXEC(@tString) 
      FETCH next FROM @getspid INTO @spid 
  END 
CLOSE @getspid 
DEALLOCATE @getspid 
DROP TABLE #tempwhois 
go
SQL Server – Cursor para matar todos os processos.
The following two tabs change content below.

Wesley Mota

DBA SQL Server
Profissional graduado em Banco de Dados e Sistemas de Informação com mais de 7 anos de experiência em empresas de software. Certificado MCSA Microsoft SQL Server possui intensa vivência em administração de banco de dados, Tunning, Performance SQL Server, levantamento de melhorias e monitoramento de banco de dados e servidores SQL Server. Consultoria SQL Server em diversos clientes no Brasil e ao redor do mundo. Escritor no blog dbasqlserverbr.com.br/blog. Onde compartilha conhecimento, experiências e dicas de performance para DBAs SQL Server. Conhecimentos em Oracle e ambientes de alta disponibilidade. Desenvolvimento de softwares web e mobile.Gerenciamento de equipe e projetos.

Latest posts by Wesley Mota (see all)