我正在研究backup+recovery场景,我遇到了一种情况,我不知道如何处理它。
我们有两个数据库,有时可能在20到30分钟内没有任何活动。我们每15分钟设置一次事务日志备份。
我的问题是:
在这段时间内会有任何TR日志备份吗?如果我碰巧恢复了这些事务日志,会发生什么情况?
对不起,我试着在不同的地方和书籍上寻找答案,但是找不到。如果有人能帮帮我的话。
提前谢谢你。
发布于 2014-09-08 15:45:12
在这段时间内会有任何TR日志备份吗?
如果根本没有活动,就不会有交易。但是,将该备份作为备份计划的一部分(即每15分钟一次)并没有坏处。
看起来就像-
/*Processed 0 pages for database 'logbackup_test', file 'logbackup_test_log' on file 1.
100 percent processed.
BACKUP LOG successfully processed 0 pages in 0.072 seconds (0.000 MB/sec).
*/如果我碰巧恢复了这些事务日志,会发生什么情况?
您将能够按顺序恢复它们,或者可以使用如果日志备份的日志序列号没有缺口,也可能跳过它。。
发布于 2014-09-08 15:58:11
考虑第一个基本问题:如果我没有任何事务,并且按照计划,如果事务日志备份作业运行,它会创建任何事务日志备份文件吗?如果没有任何事务,我可以跳过这些文件吗?
是的,当然它会创建一个事务日志备份文件。备份作业与数据库中是否有任何活动无关。即使DB处于空闲状态,内部几乎什么都没有,如果您有计划,日志备份,它也会执行。
您不应该跳过任何文件,因为日志备份是使用LSN相互连接的(很难知道何时服务器实际处于空闲状态,就像Kin指出的那样,您可能可以跳过日志备份),如果您错过了日志备份文件,恢复序列将中断。因此,您需要确保所有trn日志备份文件都完好无损,以便按照RPO和RTO进行还原。如果您错过日志文件备份,可能会出现有限的还原,从而导致数据丢失。
问题的第二部分。您可以随时遵循还原顺序,比如首先恢复完全备份,然后再进行所有后续日志备份。如果事务是在备份完成之前提交的,那么它就会出现在备份文件中。
https://dba.stackexchange.com/questions/75999
复制相似问题