Temos um SQL Server 2014 Enterprise onde os backups DIFF falham.
Esta é a mensagem de erro que recebemos:
Msg 3035, Level 16, State 1, Server sqltest, Line 1
Não é possível realizar um backup diferencial para o banco de dados 'database1', pois não existe um backup de banco de dados atual. Execute um backup completo do banco de dados emitindo novamente BACKUP DATABASE, omitindo a opção WITH DIFFERENTIAL.
Depois de analisar a saída da consulta a seguir, notamos que uma ferramenta de terceiros estava fazendo backups de instantâneos.
select top 20 bs.type,bs.database_backup_lsn,bs.checkpoint_lsn,bs.backup_start_date,bs.is_snapshot,
bs.is_copy_only,bs.user_name
from dbo.backupset bs
where bs.database_name = 'database1'
order by backup_start_date desc
De acordo com Pinal Dave , essas ferramentas usam o VSS para fazer um backup que não é um backup completo normal.
O que eu não entendo é por que os backups de LOG são bem-sucedidos? Que eu saiba, eles também são baseados no último backup COMPLETO.
Alguém pode me explicar essa diferença?
Um backup de log não é baseado no backup completo mais recente. Ele é baseado no backup de log mais recente.
Ou seja, você pode "ignorar" um backup completo ou diferencial ao restaurar backups de log, desde que tenha uma cadeia ininterrupta de backups de log.
Quanto ao seu problema específico: Trabalhe com o software/fornecedor de backup e veja se você pode fazer com que ele execute os backups de instantâneos para que sejam vistos
COPY_ONLY
pelo SQL Server. Possivelmente uma configuração em seu software de backup.