2

我对 SQL Server 恢复和批量恢复模式有 2 个困惑。

  1. 恢复过程本身是否会生成事务日志(这里我的意思是日志是恢复过程生成的日志——如果有,而不是由正常的数据库 DML/DDL 操作生成)?为什么?

  2. 在批量恢复模式下,对A或B的理解是否正确(如果都不正确,请帮助纠正我,这是我的2个不同的理解,让我感到困惑)

A. 对产品数据库进行正常的DML/DLL批量操作(不是恢复操作)会产生最小量的日志,由于日志是最小的,利用日志的恢复过程,不能恢复批量操作中间的任何点;B. 对产品数据库正常的DML/DLL批量操作仍然会产生正常的大量日志(与非批量日志恢复模式相同),但恢复过程会将事务日志中的批量操作作为一个单元进行恢复,从而产生恢复过程本身的最少日志;

问候,乔治

4

1 回答 1

1

请阅读以下两篇文章:

http://technet.microsoft.com/en-us/magazine/2009.02.logging.aspx

http://www.simple-talk.com/sql/backup-and-recovery/simple-talk-sql-server-backup-crib-sheet/

恢复过程不会创建日志。日志是执行时间点恢复过程所必需的(以及完整的数据库备份,可能还有差异备份)。

具有“批量记录”恢复的数据库的功能与“完整”数据库非常相似,只是备份中只记录批量操作的效果,而不是所涉及的事务。这些批量操作包括 BCP、某些数据转换服务 (DTS) 操作、图像和文本操作以及 SELECT INTO。通过使用“批量记录”恢复模型,批量操作被取消记录,因此速度更快。如果发生了这些批量操作之一,则不可能进行时间​​点恢复,因为如果日志备份涵盖任何批量操作,则日志备份包含日志记录和被批量操作更改的数据页,这适用于备份日志之前的所有更改。

于 2009-03-08T09:53:25.067 回答