Estou usando o SQL Server 2014 e esta é a situação:
- Eu tenho o servidor A e o servidor B.
- O ETL durante a noite é processado no servidor A.
- Após a conclusão do processo de carregamento, o backup do banco de dados X (com
CHECKSUM
eRESTORE VERIFYONLY
para garantir a confiabilidade) é enviado ao servidor B. - O servidor B recebe o
bak
arquivo e restaura o banco de dados lá.
Quero usar a estratégia de backup diferencial para que:
O backup completo é feito apenas no sábado,
ou seja, o backup completo no servidor A no sábado -> enviar para o servidor B -> restaurar o backup completo no servidor BO restante dos dias será de backup diferencial,
ou seja, backup diferencial no servidor A -> enviar para o servidor B -> restaurar o backup diferencial no servidor B
Eu tentei, mas recebi um erro, dizendo:
o log ou o backup diferencial não pode ser restaurado porque nenhum arquivo está pronto para avançar.
Não sei por que. Eu verifiquei sys.database_files
no servidor A e no servidor B e posso ver que differential_Base_LSN
e differential_base_GUID
são iguais. Em qualquer lugar / mais alguma coisa para verificar?
A propósito, na etapa 2 acima, quando estou restaurando o backup diferencial no servidor B, sempre preciso restaurar o backup completo + o backup diferencial de cada vez?
Eu restaurei apenas o backup diferencial WITH RECOVERY
(e recebi a mensagem de erro) porque o backup completo já havia sido restaurado no dia anterior.
Para esclarecer: Sim, quero que o db no servidor B seja legível entre os diferenciais. Como posso contornar isso? É minha única opção para RESTORE FULL (WITH NORECOVERY)
+ RESTORE DIFF (WITH RECOVERY)
seqüência de combo a cada noite?
Qualquer orientação será muito apreciada.
fonte