none
SQL Server 2008 - Serviço não inicia RRS feed

  • Pergunta

  • Boa tarde pessoal, estou com um problemão.

    tenho um SQL Server 2008 instalado em um Windows XP.

    E o serviço não inicia, ja tentei de tudo, porém nao consigno inicia-lo de maneira alguma.

    No Log diz isso:

    2015-03-24 15:12:08.94 spid7s      Starting up database 'master'.
    2015-03-24 15:12:12.64 spid7s      Erro: 823, Gravidade: 24, Estado: 6.
    2015-03-24 15:12:12.64 spid7s      The operating system returned error 23(Erro nos dados (verificação cíclica de redundância).) to SQL Server during a ler at offset 0000000000000000 in file 'c:\MSSQL\MSSQL10.EBS\MSSQL\DATA\mastlog.ldf'. Additional messages in the SQL Server error log and system event log may provide more detail. This is a severe system-level error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.

    O que posso tentar fazer?

    terça-feira, 24 de março de 2015 18:21

Respostas

  • Boa tarde,

    Veja o link abaixo. Talvez ajude.

    https://support.microsoft.com/pt-br/kb/2015755

    https://support.microsoft.com/pt-br/kb/828339/pt-br?wa=wsignin1.0

    Já vi isso acontecer em bases de usuário e com o DBCC CHECKDB consegui recuperar boa parte dos dados. O problema era de hardware mesmo. Tinha setores defeituosos no disco.

    O seu problema maior é que isso está justo no master e aí não consegue subir o serviço.

    Dependendo do que tiver na sua instância, você pode instalar outra, copiar os arquivos MDF e LDF dos seus databases e fazer o attach nessa nova instância.

    Isso só não vai ser viável se você tiver alguma coisa como TDE que dependa exclusivamente da sua base master (se tiver isso, você com certeza tem backup do master certo?)

    Espero ter ajudado.


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    • Sugerido como Resposta Eduardo.Romero quinta-feira, 26 de março de 2015 16:54
    • Marcado como Resposta Eduardo.Romero sexta-feira, 27 de março de 2015 20:02
    terça-feira, 24 de março de 2015 18:33
  • PereiraTiaggo,

    Concordo com a Mariana, apenas quero apenas complementar a informação.

    Contando que você tem o BACKUP do banco de dados "master", você deve efetuar o RESTORE utilizando o utilitário "sqlcmd", mas antes de efetuar esta tarefa você deve configurar sua instância SQL para ser inicializada em modo "SINGLE USER".

    Para isso, acesse o "SQL Server Configuration Manager", selecione "SQL Server Services" e clique com o botão direito no serviço "SQL Server (SuaInstância)" para selecionar a opção "Properties".

    Assim que a janela "Properties" abrir, selecione a opção "Startup Parameters". Adicione o parâmetro "-m" (minúsculo) e à seguir reinicie o serviço de sua instância. Veja a imagem abaixo:

    Assim que sua instância SQL estiver inicializada como "SINGLE USER", então utilize o "Prompt de Comando" executando com permissão de "Administrador" para executar o "sqlcmd".

    Faça a conexão com sua instância SQL utilizando o parâmetro -S "SeuServidor\SuaInstancia", segue o comando abaixo:

    sqlcmd -S SeuServidor\SuaInstancia

    Logo que for identificado o acesso, será habilitado a primeira linha "1)" para manipulação desta instância SQL.

    Basta digitar a instrução SQL para RESTORE do banco "master" com "REPLACE" para substituir o banco corrompido. Segue o script T-SQL abaixo:

    RESTORE DATABASE master FROM DISK = 'C:\SeuCaminhoOndeEstaBackUp\master.bkp' WITH REPLACE;

    Veja a imagem abaixo:

    Caso este RESTORE não funcione, então prepare para instalar ou utilizar outra instância SQL neste servidor ou em outro.

    Para maiores informações acesse:

    https://msdn.microsoft.com/pt-br/library/ms345416.aspx

    https://technet.microsoft.com/pt-br/library/ms188236(v=sql.110).aspx

    https://msdn.microsoft.com/pt-br/library/ms190679.aspx

    https://msdn.microsoft.com/pt-br/library/ms162773.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Eduardo.Romero quinta-feira, 26 de março de 2015 16:54
    • Marcado como Resposta Eduardo.Romero sexta-feira, 27 de março de 2015 20:03
    quarta-feira, 25 de março de 2015 13:53
    Moderador

Todas as Respostas

  • Boa tarde,

    Veja o link abaixo. Talvez ajude.

    https://support.microsoft.com/pt-br/kb/2015755

    https://support.microsoft.com/pt-br/kb/828339/pt-br?wa=wsignin1.0

    Já vi isso acontecer em bases de usuário e com o DBCC CHECKDB consegui recuperar boa parte dos dados. O problema era de hardware mesmo. Tinha setores defeituosos no disco.

    O seu problema maior é que isso está justo no master e aí não consegue subir o serviço.

    Dependendo do que tiver na sua instância, você pode instalar outra, copiar os arquivos MDF e LDF dos seus databases e fazer o attach nessa nova instância.

    Isso só não vai ser viável se você tiver alguma coisa como TDE que dependa exclusivamente da sua base master (se tiver isso, você com certeza tem backup do master certo?)

    Espero ter ajudado.


    Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */

    • Sugerido como Resposta Eduardo.Romero quinta-feira, 26 de março de 2015 16:54
    • Marcado como Resposta Eduardo.Romero sexta-feira, 27 de março de 2015 20:02
    terça-feira, 24 de março de 2015 18:33
  • PereiraTiaggo,

    Concordo com a Mariana, apenas quero apenas complementar a informação.

    Contando que você tem o BACKUP do banco de dados "master", você deve efetuar o RESTORE utilizando o utilitário "sqlcmd", mas antes de efetuar esta tarefa você deve configurar sua instância SQL para ser inicializada em modo "SINGLE USER".

    Para isso, acesse o "SQL Server Configuration Manager", selecione "SQL Server Services" e clique com o botão direito no serviço "SQL Server (SuaInstância)" para selecionar a opção "Properties".

    Assim que a janela "Properties" abrir, selecione a opção "Startup Parameters". Adicione o parâmetro "-m" (minúsculo) e à seguir reinicie o serviço de sua instância. Veja a imagem abaixo:

    Assim que sua instância SQL estiver inicializada como "SINGLE USER", então utilize o "Prompt de Comando" executando com permissão de "Administrador" para executar o "sqlcmd".

    Faça a conexão com sua instância SQL utilizando o parâmetro -S "SeuServidor\SuaInstancia", segue o comando abaixo:

    sqlcmd -S SeuServidor\SuaInstancia

    Logo que for identificado o acesso, será habilitado a primeira linha "1)" para manipulação desta instância SQL.

    Basta digitar a instrução SQL para RESTORE do banco "master" com "REPLACE" para substituir o banco corrompido. Segue o script T-SQL abaixo:

    RESTORE DATABASE master FROM DISK = 'C:\SeuCaminhoOndeEstaBackUp\master.bkp' WITH REPLACE;

    Veja a imagem abaixo:

    Caso este RESTORE não funcione, então prepare para instalar ou utilizar outra instância SQL neste servidor ou em outro.

    Para maiores informações acesse:

    https://msdn.microsoft.com/pt-br/library/ms345416.aspx

    https://technet.microsoft.com/pt-br/library/ms188236(v=sql.110).aspx

    https://msdn.microsoft.com/pt-br/library/ms190679.aspx

    https://msdn.microsoft.com/pt-br/library/ms162773.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"

    • Sugerido como Resposta Eduardo.Romero quinta-feira, 26 de março de 2015 16:54
    • Marcado como Resposta Eduardo.Romero sexta-feira, 27 de março de 2015 20:03
    quarta-feira, 25 de março de 2015 13:53
    Moderador