DBAtlas · Atlas de operações de banco de dados

3702: Cannot drop database because it is currently in use (não é possível remover o banco porque ele está em uso)

SQL Server

O que significa?

Houve uma tentativa de remover ou renomear um banco, mas ela foi rejeitada porque o banco ainda está em uso por conexões ativas. O SQL Server não consegue remover um banco que está em uso.

Por que acontece?

Outras sessões (um pool de aplicação, uma aba aberta do SSMS, jobs em background) estão conectadas ao banco que está sendo removido. Até a sua própria sessão ter esse banco como contexto (USE) pode causá-lo. Conexões abertas de ferramentas de monitoramento/backup também são uma causa comum.

Como resolver

Mude para outro banco antes de remover (USE master;). Encontre e feche as sessões conectadas ou, primeiro, coloque o banco em modo single-user: ALTER DATABASE [db] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; e depois execute DROP DATABASE [db]; Pare os pools de conexões da aplicação e garanta que as ferramentas de monitoramento não estejam abrindo conexões.

Abrir no DBAtlas →

Mais entradas deste banco