新的SQL数据库的差异备份失败,直到完全备份

我已经设置了一个每天晚上运行的作业,并对服务器上的所有数据库进行完整备份。 白天,另一项工作每隔几小时进行一次差异备份。

新的数据库被创build时,问题就出现了。 差异备份作业每次都会失败,直到完整备份作业自从添加数据库以来首次运行为止。 之后,一切按预期运行,至less直到添加另一个新的数据库。

当然,在没有完整备份的情况下,差异备份是没有意义的,我假设这就是为什么我得到一个错误。

问题是,有什么我可以做的,以防止这种情况,最好是每次添加新的数据库时不需要手动操作的东西?

第一个问题:为什么经常使用差别? 如果您需要这种级别的可恢复性,请将您的数据库设置为完全恢复并进行日志备份。

但是,对于您的原始问题,请重新编写备份过程以检测该数据库是否没有完整备份,如果没有,请执行完整备份。 备份信息可以在备份*表(backupset,backupmediaset等)中的msdb中find。

是的,您可以编写完整的备份脚本,以便在数据库创build时运行,或者添加一些代码,将新数据库的完整备份创build到差异备份作业的开始。

或者你可以忽略错误,这可能很难,取决于有多less错误。

哪个行为更可取,取决于你没有提到的因素,所以我们不能说,但你应该能够弄清楚是否值得在差异备份工作之前编写一些备份你的新数据库或不。