Como reparar um banco de dados corrompido no SQL Server [guia 2022]

  • A perda de dados é um problema comum, mas mostraremos como reparar um banco de dados corrompido no SQL Server.
  • Esse problema pode se originar de uma simples substituição ou exclusão acidental de arquivos a infecções por vírus e configuração incorreta.
  • O mau funcionamento da unidade de armazenamento também pode produzir corrupção de arquivos e isso inclui seu banco de dados SQL.
Como reparar um banco de dados corrompido no SQL Server

Claro, é frustrante descobrir um banco de dados corrompido em seu SQL Server por motivos óbvios. Você não pode acessar as informações e seu trabalho atinge um ponto final.

No entanto, existem muitas maneiras de corrigir esse problema com soluções manuais ou usando uma ferramenta de terceiros inteligente e dedicada chamada Caixa de ferramentas de recuperação para SQL Server.

Mas antes de iniciar a solução de problemas, vamos entender e investigar um pouco por que esse problema está acontecendo em primeiro lugar.

O que é um SQL Server e como podemos identificar o banco de dados?

Um SQL Server é um sistema de banco de dados, desenvolvido pela Microsoft, usado para gerenciar, armazenar e recuperar dados por outros aplicativos.

Existem três tipos de arquivos para armazenar e gerenciar dados em um SQL Server: arquivos primários (com extensão .MDF), arquivos secundários (com extensão .NDF) e arquivos de log (com extensão .LDF).

Estamos particularmente interessados ​​nesses arquivos MDF porque são eles que fornecem o armazenamento do banco de dados.

Por que um banco de dados é corrompido em um SQL Server?

Há muitas razões possíveis pelas quais o banco de dados do servidor SQL pode ser corrompido, desde uma simples substituição ou exclusão acidental de arquivos até infecções por vírus e configuração incorreta.

Vejamos algumas das causas mais comuns para esse problema:

  • Sobrescrevendo um arquivo – Se você escrever sobre um arquivo MDF existente por engano, corre o risco de corromper o banco de dados
  • Tentando desbloquear o banco de dados SQL - Se você esqueci a senha do SQL e digite errado muitas vezes, isso pode levar à corrupção do SQL Server
  • Falha na sua unidade de armazenamento – Escusado será dizer que um mau funcionamento da unidade pode produzir corrupção de arquivos, incluindo o banco de dados
  • Problemas com a configuração do banco de dados SQL – Se a configuração do SQL mudar, isso pode desabilitar o acesso em arquivos MDF
  • Contágio do vírus – Este é um problema comum para qualquer arquivo corrompido, não apenas os arquivos do banco de dados SQL e mesmo se você remover o vírus usando os melhores antivírus, infelizmente, ainda poderá perder alguns dados
  • Erros internos do SQL – Embora seja uma solução forte, ainda pode ter seus bugs que podem causar corrupção de arquivos MDF

Dito isso, siga nosso guia passo a passo para saber como reparar um arquivo de banco de dados SQL em um SQL Server.

Como posso reparar um banco de dados corrompido no SQL Server?

Ícone de nota
NOTA

Observação: Antes de iniciar qualquer coisa, faça um backup da biblioteca SQL.

1. Reinicie o SQL Server

  1. Abra um terminal e digite o seguinte comando para parar o SQL Server: systemctl mysql parada
  2. Para verificar o status do SQL Server, digite o seguinte comando e pressione Entrar: status mysql.service
  3. Agora reinicie o SQL Server executando o seguinte comando no terminal: reinicie o mysql.service

Às vezes, você pode resolver o problema apenas reiniciando o SQL Server. Claro, não funciona sempre, mas é tão fácil de executar que não faria mal.

2. Reparar uma mesa danificada

  1. Inicie o SQL Server.
  2. Digite o seguinte comando e pressione Entrar para executá-lo: CHECK TABLE nome_da_tabela;
  3. Se detectar algum problema com a tabela, digite o seguinte comando e pressione Entrar: REPARAR TABELA nome_da_tabela;

O REPAIR TABLE irá ajudá-lo a reparar uma tabela e você pode fazer o mesmo para qualquer outra corrompida, mas desta forma, você pode perder alguns dados da tabela.

3. Use o comando mysqlcheck

  1. Abra um terminal e digite ou cole o seguinte comando para acessar a pasta do banco de dados e pressione Entrar: cd /var/lib/mysql
  2. Agora, digite o seguinte comando para testar uma tabela e pressione Entrar. Certifique-se de substituir e com os nomes reais: mysqlcheck
  3. Se você receber a mensagem de que a tabela está corrompida, digite o seguinte comando para repará-la e pressione Entrar: mysqlcheck -r

4. Use os comandos ALTER TABLE

  1. Digite o seguinte comando para verificar seu tipo de tabela (no nosso caso, é uma tabela MyISAM): MOSTRAR CRIAR TABELA ;
  2. Para reconstruir a tabela, digite o seguinte comando e pressione Entrar: ALTERAR A TABELA MOTOR = MyISAM;
  3. Se você tiver um banco de dados InnoDB, digite o seguinte comando: ALTERAR A TABELA MOTOR = InnoDB;
Leia mais sobre este tema
  • Baixe e instale o Microsoft SQL Server 2019
  • Melhor software de backup de servidor SQL [Gratuito e pago]
  • Como proteger um banco de dados SQL Server

5. Repare o banco de dados usando o Recovery Toolbox for SQL Server

  1. Vá para a página dedicada do Recovery Toolbox for SQL Server e clique no Download botão.
  2. Instale o aplicativo depois de escolher o idioma e aceitar o contrato de licença.
  3. Clique Terminar para iniciar a ferramenta de reparo do SQL Server MDF.
  4. Selecione o corrompido *.mdf arquivo clicando no ícone da pasta de origem.
  5. Depois de selecioná-lo, clique no botão Próximo botão.
  6. Agora você poderá visualizar os dados que podem ser recuperados do banco de dados corrompido do Microsoft SQL Server. Clique em Avançar na janela da ferramenta de recuperação do Microsoft SQL MDF para iniciar o processo.
  7. Agora, você só precisa escolher o método de exportação de dados. Você pode salvá-lo como Scripts SQL para o disco e até mesmo executar o script SQL diretamente no banco de dados.
  8. Por fim, escolha quais dados salvar e clique em Iniciar a recuperação.

Então, isso é como reparar arquivos de banco de dados do SQL Server com esta ferramenta simples e eficaz. Como você pode ver, ele fará o trabalho muito mais rápido.

O Ferramenta de recuperação de servidor MS SQL também irá ajudá-lo se você estiver enfrentando os seguintes problemas com o banco de dados MDF:

  • Erro 5172 do Microsoft SQL Server – A propriedade FILE SIZE está incorreta
  • SQL Server detectou um erro de E/S baseado em consistência lógica – É um Checksum incorreto, também conhecido como erro 824 no SQL Server
  • A página Index Allocation Map (IAM) é apontada pelo Next Pointer de uma página IAM - É um problema bastante comum
  • Erro de E/S, ID de página incorreta, detectado ao ler no deslocamento 0x###### no arquivo FileName.mdf - Isso não aparece com frequência, mas você ainda pode repará-lo com esta pequena ferramenta
  • O arquivo parece ter sido truncado pelo erro do sistema operacional – Provavelmente causado por um problema de configuração
  • Ocorreu um erro no ID do registro de log – Ocorre durante o refazer de uma operação logada no banco de dados

Na verdade, com o Recovery Toolbox for SQL Server, repare todos os objetos de arquivos .mdf corrompidos, incluindo tipos de dados, tabelas dados de células, visualizações, procedimentos armazenados, funções personalizadas, gatilhos, índices, chaves primárias e estrangeiras, restrições e outras.

E a grande vantagem é que você pode exportar os dados reparados diretamente para o Microsoft SQL Server diretamente do aplicativo.

É isso! Agora você sabe como reparar seu banco de dados SQL Server manualmente ou usando uma ferramenta dedicada.

Se você conhece métodos adicionais ou tem alguma dúvida, esperamos por eles na seção de comentários abaixo.

Correção: erro de função agregada ao executar a consulta

Correção: erro de função agregada ao executar a consultaServidor Sql

Adicionar a cláusula GROUP BY é muito eficiente para a maioria dos casosUm erro de função agregada no SQL ocorre quando você tenta usar uma função agregada de uma forma não suportada pela linguagem...

Consulte Mais informação
O que é Mysqld.exe e como corrigir seu alto uso de CPU

O que é Mysqld.exe e como corrigir seu alto uso de CPUServidor SqlWindows 11

Ajuste a configuração do MySQL ou atualize o servidor MySQLO mysqld.exe faz parte do MySQL Server Software desenvolvido pelo desenvolvedor de software Oracle.Quando você executa o software MySQL em...

Consulte Mais informação
Corrigir erro Msmdsrv.exe e alto uso da CPU

Corrigir erro Msmdsrv.exe e alto uso da CPUAlto Uso De CpuPower BiServidor SqlErro De Aplicação

Descubra como outros conseguiram resolver o problema!O processo msmdsrv.exe está vinculado ao Microsoft SQL Server e é uma instância do Analysis Services.Problemas com o arquivo executável surgem d...

Consulte Mais informação