Inquiridor
Bat para executar kill em nos processos

Pergunta
-
Olá pessoal,
Alguém conhece uma forma de se fazer um bat para efetuar um kill nos processos de uma base?
Grato,
Ilano.
- Movido Gustavo Maia Aguiar quinta-feira, 27 de janeiro de 2011 16:49 (De:SQL Server - Desenvolvimento Geral)
Todas as Respostas
-
Boa Tarde,
Se você pretende matar todos os processos de uma base não há necessidade de efetuar Kill para cada processo. Faça o seguinte:
Use Master GO ALTER DATABASE SuaBase SET OFFLINE WITH ROLLBACK IMMEDIATE GO ALTER DATABASE SuaBase SET ONLINE WITH ROLLBACK IMMEDIATE GO
Isso fará com que todos os processos sejam eliminados liberando a base. É possível implementar a Batch, mas é bem mais trabalhoso e menos confiável (você pode matar todos e durante esse processo aparecerem outros processos).
[ ]s,
Gustavo Maia Aguiar
http://gustavomaiaaguiar.wordpress.com/Exclusões em cascata e auto-referência no SQL Server
http://gustavomaiaaguiar.wordpress.com/2011/01/22/excluses-em-cascata-e-auto-referncia-no-sql-server/
Classifique as respostas. O seu feedback é imprescindível- Sugerido como Resposta Gustavo Maia Aguiar quinta-feira, 27 de janeiro de 2011 16:49
-
-
Bem, na verdade gostaria de definir esses processos e não matar todos. Pois em alguns momentos quando mando fazer o restoure demora demais e avisa q não pode realizar o restoure, então mando matar alguns processos e dá certo. Nem sei se essa é a melhor prática, mas era assim q eu fazia, agora com o post do Gustavo Maia Aguiar talvez dê certo.
-
Para fazer o restore tem que ser seguindo o que o Gustavo disse. Para restore eu costumo passa o banco para RESTRICTED_USER com Rollback Immediate. Consigo usar o Restricted User porque sou o unico adm dos bancos, mas você pode tambem passar ele para SINGLE_USER tambem (sempre com Rollback Immediate).
Depois é só fazer o Restore, não precisa passar para OnLine ou Multi_User que o proprio recovery do restore faz.
ALTER DATABASE [Nome_Do_Banco] SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE
GO
Restore [Nome_Do_Banco] ......
Tks. Fausto Fiorese Branco MCTS, MCITP/DBA 2005 | MCITP/DBA 2008 São Paulo - Brasil * http://www.linkedin.com/in/faustobranco