2009-07-02 71 views
4

完整备份SQL2005数据库后,事务日志有多重要?对SQL2005数据库进行完全备份后,事务日志有多关键?

示例:我有一个名为的数据库测试,我不关心使用事务日志进行时间点恢复,只是我可能想要恢复到上次完全备份时采用的数据库版本。

现在,在备份目录中,我有一个名为Test.bak的完全备份以及4个关联的.trn文件。如果我创建另一个名为Test1.bak的新备份,那么从我以前的备份序列中删除Test.bak + .trn文件是否安全?如果我删除除Test1.bak以外的所有备份文件,我是否能够仅从该一个文件恢复,或者是否应该因为.trn文件不存在而导致恢复问题?

回答

4

如果您不希望将它们用于日志传送或作为备份策略的一部分,则可以为所有意图和目的而忽略事务日志文件。

事务日志文件有两个用途,最重要的是在发生崩溃(以及短期事务管理)时保持数据完整性。第二个目的涉及备份,正如问题所推断的那样,而且该目的也有助于日志传送和相关事情。

如果您没有在给定数据库中使用事务日志以外的任何其他常见的崩溃恢复/完整性行为,那么您可以使用简单恢复模式,该模式反过来启用“trunc. log on checkpoint”数据库选项。发生这种情况时,事务日志不能被备份,并且它会被周期性地截断。即时无忧交易日志!

+0

谢谢。你的答案确实有帮助。另外,从您的评论,我发现这个网站,它可以帮助我很多:http://www.simple-talk.com/sql/backup-and-recovery/sql-server-2005-backups。我很可能会将此标记为答案,但我想看看我得到了什么其他答案。 – djangofan 2009-07-02 17:41:42

1

如果您对时间点恢复不感兴趣,则根本不需要事务日志备份。您始终可以从完整数据库备份恢复数据库。

但是,我不能想到一个好的理由,不要对时间点恢复感兴趣,除非它是一个开发或测试数据库(如你的)。

+0

是的,但我的问题不是关于我想要时间点恢复的情况。对于那些scenerios我没有任何问题,因为在互联网上有关于该主题的大量文档。在上网后,很难找到我的问题的直接答案(上图)。 – djangofan 2009-07-02 17:30:09

0

如果您不使用SIMPLE备份策略,并且保留事务日志,那么当您执行完整备份时,我认为事务日志不再需要。因此,如果事务日志对您和您的备份策略非常重要,那么您可能希望在备份期间使用COPYONLY标志,这样就不会中断事务日志历史记录的序列。

相关问题