none
Erro durante Restore um banco de dados RRS feed

  • Pergunta

  • Ola pessoal,

    Quando tento fazer um restore do meu banco de dados (SQL SERVER 2005) aparece uma mensagem alertando que o banco está em uso.

    Retore cannot access the database 'DB' because it is in use by this session. It is recommended that the master database be used when performing this operation.

    Valeu pela ajuda.

    Anderson


    Anderson Muniz
    segunda-feira, 1 de novembro de 2010 13:41

Respostas

  • anderson

    deve ter alguem usando seu banco.. altere o status dele para single com rollback imediate e execute o restore...

    USE [master]
    GO
    ALTER DATABASE [seu_banco] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    GO
    
    RESTORE DATABASE [seu_banco] FROM DISK = N'D:\backups\seu_banco.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10
    GO
    
    ALTER DATABASE [seu_banco] SET MULTI_USER
    GO
    
    

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    • Marcado como Resposta Richard Juhasz quarta-feira, 30 de janeiro de 2013 15:09
    segunda-feira, 1 de novembro de 2010 14:00
    Moderador
  • Anderson,

    Através do sys.processes, ou sp_who2 você poderá obter a relação de conexões que estão fazendo uso deste banco, após identificar basta utilizar o comando Kill para matar esta transação.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    • Marcado como Resposta Richard Juhasz quarta-feira, 30 de janeiro de 2013 15:09
    sábado, 6 de novembro de 2010 15:38
    Moderador

Todas as Respostas

  • anderson

    deve ter alguem usando seu banco.. altere o status dele para single com rollback imediate e execute o restore...

    USE [master]
    GO
    ALTER DATABASE [seu_banco] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    GO
    
    RESTORE DATABASE [seu_banco] FROM DISK = N'D:\backups\seu_banco.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10
    GO
    
    ALTER DATABASE [seu_banco] SET MULTI_USER
    GO
    
    

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    • Marcado como Resposta Richard Juhasz quarta-feira, 30 de janeiro de 2013 15:09
    segunda-feira, 1 de novembro de 2010 14:00
    Moderador
  • Anderson,

    Através do sys.processes, ou sp_who2 você poderá obter a relação de conexões que estão fazendo uso deste banco, após identificar basta utilizar o comando Kill para matar esta transação.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    • Marcado como Resposta Richard Juhasz quarta-feira, 30 de janeiro de 2013 15:09
    sábado, 6 de novembro de 2010 15:38
    Moderador