我们有一个 DIFF 备份失败的 SQL Server 2014 Enterprise。
这是我们得到的错误信息:
消息 3035,级别 16,状态 1,服务器 sqltest,第 1 行
无法为数据库“database1”执行差异备份,因为当前数据库备份不存在。通过重新发出 BACKUP DATABASE 执行完整的数据库备份,省略 WITH DIFFERENTIAL 选项。
在分析以下查询的输出后,我们注意到第三方工具正在进行快照备份。
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
根据Pinal Dave的说法,这些工具使用 VSS 进行备份,这不是正常的完整备份。
我不明白为什么 LOG 备份会成功?据我所知,它们也是基于上次的完整备份。
有人可以向我解释这种差异吗?
日志备份不是基于最近的完整备份。它基于最近的日志备份。
即,您可以在恢复日志备份时“跳过”完整备份或差异备份,只要您拥有完整的日志备份链。
至于您的特定问题:使用备份软件/供应商,看看您是否可以让它执行快照备份,以便
COPY_ONLY
SQL Server 将它们视为。可能是备份软件中的设置。