locked
O login SA não funciona em single mode no sql server 2008 RRS feed

  • Pergunta

  • Ola,

    Preciso colocar os base de dados no modo de suspect, para isso precsio entrar em single mode.

    Consigo abrir o sql sever manager, ver as base de dados , mas ao clicar em query analyser , dá um erro dizendo que só o

    adminstrador é que pode exectar essa tarefa em single mode.

    Não consigo perceber visto que estou com SA.

    Podem ajudar?

     


    Fidalgo
    quinta-feira, 29 de julho de 2010 10:08

Respostas

  • Boa Tarde,

    Não é possível colocar um base em SUSPECT de forma voluntária. Ainda que fosse possível, eu sugiro que não se aplique ao seu caso, pois, o MDF está corrompido. Infelizmente ao contrário do que possa parecer, é necessário ter sempre o arquivo MDF e o LDF e não somente o MDF. Mesmo o MDF tendo os dados, o LDF é necessário, pois, pode haver transações que não foram finalizadas no MDF e somente o LDF pode garantir essa consistência.

    Receio não haver mais o que fazer, mas podemos tentar esse procedimento (o correto não é SUSPECT e sim EMERGENCY MODE). Rode o comando ALTER DATABASE Banco SET EMERGENCY. Isso é equivalente a tentar fazer todo o procedimento que você havia sugerido.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Truncate versus Delete - Uma explicação mais detalhada
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!1112.entry 


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 29 de julho de 2010 17:39

Todas as Respostas

  • Bom Dia,

    Não entendi sua solicitação. Você quer colocar as bases de dados como SUSPECT ? SUSPECT é um estado que as bases entram quando estão suspeitas, ou seja, não há garantias sobre sua integridade física. Não é possível colocar um base em SUSPECT voluntariamente. Qual a razão de querer colocar as bases nesse estado ? Outro ponto é que não é preciso colocar o SQL Server em Single User Mode para alterar o estado das bases.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Truncate versus Delete - Uma explicação mais detalhada
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!1112.entry


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 29 de julho de 2010 11:30
  • O objectivo de colocar a base de dados como  suspect é tenho apenas o ficheiro mdf de uma base de dados e ao utilizar

    e tenho exactamente este problema

    REATE DATABASE [Test] ON
    (FILENAME = N'G:\MSSQL\Data\Test.mdf')
    FOR ATTACH_REBUILD_LOG
    GO

    File activation failure. The physical file name "D:\MSSQLDATA\Test_log.LDF" may be incorrect.
    The log cannot be rebuilt because the database was not cleanly shut down.
    Msg 1813, Level 16, State 2, Line 1
    Could not open new database 'Test'. CREATE DATABASE is aborted.

    Já tentei vário maneiras, alterando o nome do mdf, criando manualente um ldf e nada.

    Encontrei num forum que devia cria uma base de dados nova com o mesmo nome e coloca-la em modo de suspect e depois fazer o detach da base de dados nesse mesmo modo

    Só que para fazer isso  tenho que fazer um update a tabela da master sysdatabases,

    update master..sysdatabases set status = status|320
           WHERE name = 'API'

    fazer este comando da um erro que é HADOC, segundo também vi num forum para alterar apartir do sql 2005 qualque coisa nessa tabela

    é preciso entrar no SQL SERVER em single mode.


    Fidalgo
    quinta-feira, 29 de julho de 2010 17:06
  • Boa Tarde,

    Não é possível colocar um base em SUSPECT de forma voluntária. Ainda que fosse possível, eu sugiro que não se aplique ao seu caso, pois, o MDF está corrompido. Infelizmente ao contrário do que possa parecer, é necessário ter sempre o arquivo MDF e o LDF e não somente o MDF. Mesmo o MDF tendo os dados, o LDF é necessário, pois, pode haver transações que não foram finalizadas no MDF e somente o LDF pode garantir essa consistência.

    Receio não haver mais o que fazer, mas podemos tentar esse procedimento (o correto não é SUSPECT e sim EMERGENCY MODE). Rode o comando ALTER DATABASE Banco SET EMERGENCY. Isso é equivalente a tentar fazer todo o procedimento que você havia sugerido.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Truncate versus Delete - Uma explicação mais detalhada
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!1112.entry 


    Classifique as respostas. O seu feedback é imprescindível
    quinta-feira, 29 de julho de 2010 17:39