您的位置:首页 > 数据库

差异备份 (SQL Server)

2014-10-30 17:53 274 查看


优点

与创建完整备份相比,创建差异备份的速度可能非常快。 差异备份只记录自差异备份所基于的完整备份后更改的数据。 这有助于频繁地进行数据备份,减少数据丢失的风险。 但是,在还原差异备份之前,必须先还原其基准。 因此,从差异备份进行还原必然要比从完整备份进行还原需要更多的步骤和时间,因为这需要两个备份文件。

如果数据库的某个子集比该数据库的其余部分修改得更为频繁,则差异数据库备份特别有用。 在这些情况下,使用差异数据库备份,您可以频繁执行备份,并且不会产生完整数据库备份的开销。

在完整恢复模式下,使用差异备份可以减少必须还原的日志备份的数量。



对只读数据库进行差异备份

对于只读数据库,单独使用完整备份比同时使用完整备份和差异备份更容易管理。 当数据库为只读时,备份和其他操作无法更改文件中包含的元数据。 因此,差异备份所要求的元数据(如差异备份开始的日志序列号,即差异基准 LSN)存储在 master 数据库中。 如果在数据库只读时采用的是差异基准,则差异位图指示的更改多于在基准备份之后实际发生的更改。 额外的数据由备份读取,但不会写入到备份中,因为存储在 backupset 系统表中的 differential_base_lsn 用于确定在基准之后是否实际更改了数据。

重新构建、还原只读数据库或者分离再重新附加只读数据库后,会丢失差异基准信息。 这是因为 master 数据库与用户数据库不同步。 SQL Server 数据库引擎无法检测或防止此问题的出现。 所有后续差异备份都不是基于最新的完整备份,从而可能会出现出人意料的结果。 若要建立新的差异基准,建议先创建完整数据库备份。


对只读数据库进行差异备份的最佳方法

创建只读数据库的完整数据库备份之后,如果要创建后续差异备份,则请备份 master 数据库。

如果 master 数据库丢失,请在还原用户数据库的任何差异备份之前,将其还原。

如果分离和附加计划稍后对其使用差异备份的只读数据库,则应尽快执行此只读数据库和 master 数据库的完整数据库备份。

差异备份 (SQL Server)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: