Depois de clicar em "Tomar banco de dados offline" no estúdio de gerenciamento, esta mensagem fica travada e não será fechada se você clicar em fechar.
Qual é uma boa maneira de lidar com trabalhos presos como esses no estúdio de gerenciamento? Você pode matá-los através do monitor de atividade? Devo procurar qual processo está impedindo que este trabalho seja concluído e encerrá-lo?
Eu diria que nunca use a coisa "Take Offline" na GUI, a menos que você saiba de fato que o banco de dados não está em uso. Por qualquer coisa. Isso é difícil de saber sem fazer algum trabalho braçal, então por que não salvar esse script em algum lugar e sempre usá-lo?
E depois a recíproca, claro:
A razão pela qual você precisa defini-lo como
SINGLE_USER
primeiro é expulsar qualquer usuário existente (há uma opção para fazer isso na caixa de diálogo de desanexação, mas não na caixa de diálogo de desconectar), já que o SQL Server precisa de acesso exclusivo ao banco de dados para tirar isso off-line. Agora, você pode querer fazer algum trabalho extra para ver quem está usando o banco de dados no momento, como se você fizesse isso no meio de uma grande operação de backup ou trabalho de ETL ou o que você tem, isso pode ser problemático.EDIT : Eu enviei uma sugestão no Connect sobre isso (consulte Connect #2687832 ) e também a publiquei no Trello (arquivada em "Object Explorer").Isso foi corrigido no SSMS 16.3; agora há uma caixa de seleção que pergunta se você deseja encerrar com força quaisquer conexões ativas.
Quando você já estiver na situação de suspensão, não esqueça que você pode pesquisar conexões abertas no servidor com
em outro banco de dados, como master.
Examine os resultados para qualquer lugar em que o banco de dados seja aquele que você está tentando colocar offline.
Observe o valor da coluna spid (id do processo) dessas linhas.
Um de cada vez, corra
onde "##" é o spid.
Certamente tome cuidado para garantir que esses processos não sejam importantes para deixar em execução... eles serão finalizados sem terminar o último comando e sem aviso prévio.
Se outras respostas não ajudarem, tente matar o processo do estúdio de gerenciamento do gerenciador de tarefas. Fez o truque para mim uma vez. Eu acho que ajudou ao eliminar as sessões abertas. Outra boa notícia é que, após reiniciar o estúdio de gerenciamento, ele recuperou todos os arquivos abertos. Use isso como último recurso, é claro.