Eu sei que a resposta da pergunta pode variar dependendo do que exatamente está quebrado em cada .mdf
arquivo - apenas procurando conselhos se houver outra maneira de abordar isso.
Então, recebi algumas más notícias do administrador do banco de dados. Algo assim aconteceu ontem à noite (essa é a única informação que tenho dele):
- uma unidade falhou
- a unidade foi substituída, mas durante a reconstrução falhou novamente .. e novamente
- era uma unidade nova, então foi movida para um slot de unidade diferente no chassi
- fazendo o acima, eu puxei por engano a unidade cachcade que, por sua vez, bloqueou qualquer volume com proteção cachecade
- depois de reinserir a unidade cachecade, a atividade da unidade foi retomada (as unidades foram para um estado "bloqueado")
Parece que as etapas acima levam à .mdf
corrupção de arquivos e não funcionam corretamente. Então, começamos force attached
a nova instância SQL, seguindo os passos abaixo:
- Criar novo banco de dados
- excluir seus arquivos
adicione um arquivo corrompido
.mdf
eldf
e restaure-os com o script abaixo:USE master GO ALTER DATABASE [] MODIFY FILE(NAME='', FILENAME= '') ALTER DATABASE [] MODIFY FILE(NAME='', FILENAME= '') GO ALTER DATABASE [] SET ONLINE GO DBCC TRACEON(3604) GO ALTER DATABASE [] SET EMERGENCY GO ALTER DATABASE [] SET SINGLE_USER GO DBCC CHECKDB('[]', REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS GO ALTER DATABASE [] SET MULTI_USER GO
Ele também me disse isso
Repair errors are different per database
e algunsdatabase
não podem ser reparados.
Então, eu tenho alguma outra opção aqui ou preciso verificar como funciona o acima para cada banco de dados e mover alguns dados (se possível) para o banco de dados restaurado da cópia mais antiga manualmente?
Se fosse eu?
Pare todos os processos que dependem desse banco de dados e restaure a partir de seus backups mais recentes.
Depois que você estiver estável, você pode passar pelo exercício acadêmico de tentar consertar o máximo da mídia corrupta que você tiver energia e orçamento para aguentar. Supondo que você tenha um forte entendimento das dependências upstream e downstream dessa mídia, você poderá reparar logicamente restaurar alguns dos dados perdidos no tempo entre o final do último backup estável e a interrupção.