Ao restaurar um banco de dados, uma das coisas que você precisa fazer é garantir que você tenha acesso exclusivo ao banco de dados. Se houver outros usuários conectados no banco de dados, você não conseguirá fazer o restore.
Provavelmente o que acontecerá é que ao tentar fazer o restore do seu banco de dados você receberá o seguinte erro:
Msg 3101, Level 16, State 1, Line 1
Exclusive access could not be obtained because the database is in use.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
Obtendo o acesso exclusivo:
Para obter o acesso exclusivo, você precisa que todas as conexões sejam dropadas (apagadas), ou o banco de dados que eles as outras conexões estão acessando precisam ser alteradas para que não usem o banco de dados no momento que você estiver tentando restaurar. Você pode usar sp_who2 ou SSMS para ver quais conexões estão usando o banco de dados que você está tentando restaurar.
Usando KILL:
Uma opção para obter acesso exclusivo é usar o comando KILL para matar cada conexão que está usando o banco de dados. Mas esteja ciente de quais conexões você está matando e os problemas de ROLLBACK que podem precisar ocorrer durante esse processo.
Usando ALTER DATABASE (Meu preferido):
Uma outra opção é colocar o banco de dados no modo de usuário único e, em seguida, fazer a restauração. Isso também faz uma ROLLBACK dependendo da opção que você usa, mas fará todas as conexões de uma só vez. Veja abaixo o código para fazer isso:
ALTER DATABASE AdventureWorks2016 SET SINGLE_USER WITH ROLLBACK IMMEDIATE GO RESTORE DATABASE AdventureWorks2016 FROM DISK = 'D:\AdventureWorks2016.bak' GO
Saiba como a função UPPER() no SQL Server pode degradar a performance das suas consultas…
Saiba agora mesmo como você pode diminuir o RESOURCE_SEMAPHORE_QUERY_COMPILE no SQL Server. Recentemente eu trabalhei em…
Nós DBA' e desenvolvedores quase sempre temos que trabalhar com datas quando se trata de…
Quais são as diferentes maneiras de proteger o login Senha do Administrador (SA)? Todos estão…
Com os direitos que o login sa tem por padrão no SQL Server, é obrigatório…
Como um DBA, você tem a responsabilidade de garantir a segurança do aplicativo e dos…