Depois de clicar em "Colocar o banco de dados offline" no estúdio de gerenciamento, essa mensagem permanece travada e não será fechada se você clicar em fechar.
Qual é uma boa maneira de lidar com trabalhos bloqueados como esses no estúdio de gerenciamento? Você pode matá-los através do monitor de atividades? Devo procurar qual processo está impedindo a execução deste trabalho e finalizá-lo?
sql-server
ssms
A_V
fonte
fonte
ALTER DATABASE foo SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
primeiro ... caso contrário, ele fica parado e aguarda, e por um banco de dados ocupado, isso pode ser para sempre.Respostas:
Eu diria que nunca use a coisa "Take Offline" na GUI, a menos que você saiba que o banco de dados não está em uso. Por qualquer coisa. É difícil saber sem fazer algum trabalho braçal, então por que não salvar esse script em algum lugar e sempre usá-lo?
E então o recíproco, é claro:
O motivo pelo qual você precisa configurá-lo
SINGLE_USER
primeiro é expulsar todos os usuários existentes (existe uma opção para fazer isso na caixa de diálogo desanexar, mas não na caixa de diálogo offline), pois o SQL Server precisa de acesso exclusivo ao banco de dados para poder offline. Agora, você pode 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 tarefa de ETL ou o que você tem, isso pode ser problemático.EDIT : Eu ter apresentado uma sugestão em Conectar sobre isso (ver Ligação # 2687832 ) e também postou a Trello (arquivado em "Object Explorer").
fonte
Quando você já estiver em uma situação de suspensão, não se esqueça de que pode procurar conexões abertas no servidor com
em outro banco de dados, como mestre.
Examine os resultados para qualquer lugar em que o banco de dados seja o que você está tentando colocar offline.
Observe o valor da coluna spid (identificação 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 encerrados sem sequer terminar o comando mais recente e sem aviso prévio.
fonte