为什么备份SQL日志很重要?

我是一个SQL noob。 备份SQL日志文件有什么重要之处?

SQL Server使用事务日志来logging应用到主数据库文件的所有修改,以便A)提供提交/回滚交易function,以及B)提供在以前的备份被恢复时重播这些修改的可能性,以及数据库需要被更新到自备份之后发生的事情。

如果事务日志从不备份,它们将无限增长,自上次备份以来,将继续logging所有数据库修改; 所以支持它们的一个非常简单的理由是,如果你不这样做,它们将会不断增长并最终填满所有可用的磁盘空间。

另外一个备份的重要原因是,这是在SQL Server中进行“增量”备份的方式; 即在完整的数据库备份之后,您可以进行事务日志备份(或多个串联),这不仅会截断旧的日志文件和空闲的磁盘空间,还可以充当“自上次备份以来更改的内容”备份,允许你做增量恢复,如果你需要它们。

事务日志在SQL Server中有非常强大的作用,在进行备份/恢复时非常重要。

(*)以上所有内容适用于使用完整或大容量日志恢复模式的数据库; 如果将数据库configuration为简单恢复模式,则事务日志不会以这种方式使用:其中一些事务日志用于事务处理,但是它们保持在最低限度并自动回收,而不会无限增长; 在这种情况下,增量备份/恢复当然会丢失。

AEP的答案绝对不是。 这会给他的生意带来很大的影响。

首先,增量备份不使用日志文件,而是使用事务日志备份。 事务日志捕获对数据库所做的修改,以便在发生故障时能够将数据库恢复到一致状态(回滚未完成的事务)

其次,差异备份(也称为“增量”)包含自上次完整备份以来在数据页面上所做的所有更改。 为了了解备份策略,您需要先阅读有关3种恢复模式(简单,完整,批量logging)的说明,然后查看您的情况以及最适合的恢复选项套件。 你可以阅读msdn和更多关于这个。

这个问题没有正确的答案。 数据库设置为Full或Bulk-Logged Recovery模式时,绝对需要日志备份,否则您的日志文件将无限增长,可能会在某个时间声明您的所有磁盘大小。

请记住,如果数据库使用FULL或BULK恢复模式,则仅值得备份日志。 如果您的数据库处于SIMPLE模式,那么备份日志文件将没有任何有益的用处。

恢复模式可以在Database Porperties和Options页面find。

假设您正在使用完整恢复模式。 然后,您还需要考虑您希望备份事务日志文件的频率。 这将是一个基于您愿意使用多less交易数据的业务决策,因此在发生灾难时可以重复使用。

另外请记住,事务日志备份与数据库备份完全不同,您仍然需要定期对数据库进行完整备份。