O Recovery Toolbox for SQL Server pode ser capaz de recuperar seu banco de dados Microsoft SQL Server corrompido.
Motivos para a recuperação malsucedida de bancos de dados Microsoft SQL Server
Possíveis motivos pelos quais o serviço de recuperação de banco de dados SQL Server online não conseguiu recuperar um arquivo MDF Microsoft SQL Server corrompido:
- O serviço não recebeu um arquivo MDF, mas sim um LDF, BAK ou outro tipo de arquivo que havia sido apenas renomeado.
- Parte dos dados do banco de dados foi armazenada em arquivos NDF adicionais, mas apenas o arquivo MDF principal foi enviado para o serviço online. Para recuperar pares de arquivos MDF+NDF, você precisa usar o Recovery Toolbox for SQL Server.
- O arquivo MDF foi truncado durante a cópia ou o envio. Alguns dados estão fisicamente ausentes no final do arquivo.
- O arquivo MDF está quase cheio de zeros ou lixo devido a uma falha no disco, e não há nada para recuperar.
- Páginas críticas do serviço de banco de dados (página de inicialização, GAM, SGAM, etc.) foram destruídas e não podem ser reconstruídas.
- As tabelas do catálogo do sistema (lista de tabelas, colunas e relações) estão tão danificadas que a estrutura dos dados não pode ser compreendida.
- A maioria das páginas de dados no arquivo MDF tem somas de verificação corrompidas e não podem ser lidas, mesmo em blocos.
- Partes do arquivo MDF foram fisicamente sobrescritas com outros dados — as mesmas páginas aparecem em várias versões incompatíveis.
- O banco de dados foi criptografado usando o SQL Server (TDE) e o serviço não possui as chaves de criptografia — o arquivo é visível como um conjunto de blocos criptografados.
- O arquivo MDF foi criptografado por ransomware usando criptografia forte; o serviço não realiza a descriptografia, apenas a análise da estrutura.
- Antes do upload, o arquivo MDF foi adicionalmente criptografado ou compactado com um programa de terceiros, e a versão criptografada foi enviada ao serviço.
- O arquivo MDF está danificado no nível do sistema de arquivos: há setores defeituosos que sempre retornam um erro ou zeros quando lidos.
- Durante o upload da rede, o arquivo MDF foi corrompido (pacotes quebrados, falha de conexão) e uma cópia danificada chegou ao servidor.
- O arquivo foi parcialmente enviado (não esperou pelo fim, fechou a guia) — o serviço só funciona com arquivos que são totalmente enviados para o serviço.
- O usuário baixou acidentalmente outro arquivo: um arquivo MDF antigo sem os dados necessários, uma cópia de teste, um banco de dados vazio, etc.
- Entre a execução de teste e a tentativa paga, o arquivo MDF foi danificado ou sobrescrito novamente, e agora o nível de dano é maior.
- Antes de usar o serviço, o DBCC CHECKDB foi executado com o parâmetro REPAIR_ALLOW_DATA_LOSS — os dados problemáticos foram excluídos irremediavelmente do arquivo MDF.
- SHRINK ou outras operações que reescreveram páginas foram realizadas anteriormente no banco de dados; os dados antigos foram fisicamente apagados e não podem ser recuperados.
- Os registros necessários foram excluídos há muito tempo (operação TRUNCATE executada) e as páginas já foram usadas para novas tabelas. O arquivo MDF não contém versões antigas dos dados.
- O usuário esperava restaurar o estado intermediário 'de ontem', mas o MDF armazena apenas o estado atual, sem os dados antigos necessários.
- Os arquivos de streaming associados ao banco de dados (FILESTREAM, FileTable, etc.) estão faltando, portanto, é impossível recuperar os dados deles.
- A estrutura da tabela está danificada de tal forma que as mesmas páginas se referem a objetos diferentes, e é impossível montar as tabelas de forma inequívoca.
- Há muitos danos cruzados nos índices e nos dados — o risco de montar um banco de dados incorreto é maior do que o aceitável para um serviço automatizado.
- A integridade da estrutura de referência (chaves estrangeiras, relações em cascata) nas tabelas está tão comprometida que é impossível recuperar um conjunto consistente de dados.
- O arquivo contém uma inconsistência lógica grave: os tamanhos dos objetos especificados nos cabeçalhos não correspondem às páginas reais.
- O arquivo MDF contém fragmentos de vários bancos de dados diferentes (reutilização sequencial do arquivo) e o serviço não consegue separá-los corretamente.
- Não havia espaço suficiente no disco do qual o MDF foi copiado; como resultado, parte do arquivo não foi salva e foi enviada ao serviço de forma truncada.
- O arquivo MDF foi restaurado a partir de uma imagem/backup com erros e já estava danificado antes de ser carregado no serviço.
- O antivírus ou o Windows Defender no lado do cliente danificou o arquivo durante a cópia (por exemplo, cortou seções suspeitas).
- O banco de dados usa um tamanho de página/bloco não padrão ou configurações experimentais que não são suportadas pelo mecanismo de análise.
- As tabelas armazenam um formato de dados binários altamente não padrão que não pode ser interpretado corretamente sem a lógica do usuário.
- No momento da falha, o servidor SQL estava no meio de uma operação pesada (ATUALIZAÇÃO/RECONSTRUÇÃO DE ÍNDICE em massa) e não foi possível concluí-la logicamente com base nos traços no MDF.
- Após a recuperação, a estrutura do banco de dados foi remontada com sucesso, mas a quantidade de dados que realmente pôde ser recuperada foi praticamente zero — o serviço informa que a recuperação não é viável.
- O arquivo mostra sinais de interferência externa (edição hexadecimal manual, reparo com utilitários desconhecidos) que violaram o formato esperado.
- O arquivo MDF pertence a um banco de dados que nunca foi totalmente inicializado (a criação foi interrompida) — não há estrutura completa interna para recuperação.
- O arquivo pertence a um espelho/réplica ou instantâneo que foi criado/excluído com um erro, e algumas das páginas necessárias estão faltando.
- O banco de dados está gravemente danificado após uma migração/atualização malsucedida do SQL Server, e o arquivo MDF contém uma mistura de estruturas de formato antigo e novo.
- Os dados nas tabelas de usuários do serviço (por exemplo, dados de esquema) estão gravemente danificados, sem os quais o serviço não pode recuperar os objetos restantes.
- O serviço conseguiu extrair apenas algumas das tabelas, mas a tabela com os dados necessários ao usuário está completamente danificada; no relatório, isso aparece como o arquivo não pode ser reparado.
- O arquivo foi criado por outro software e apenas imitou o formato MDF, então o serviço online determinou corretamente que era um banco de dados SQL Server inválido.
- Existem restrições de política de segurança/armazenamento no lado do servidor (por exemplo, uma proibição de processar arquivos com certos tipos de criptografia), o que fez com que a análise fosse interrompida à força.