Microsoft Sql Server Management Studio备份大小变为负数

时间:2010-08-11 11:04:26

标签: sql-server backup ssms sql-server-2008

问题是我需要解释工厂中数据库的不同大小的备份。有时大小之间的差异是负的,即使没有数据从系统中删除。

 Datum  Backupfile-file         Size KB     Diff    

 6/1/10 backup201006010100.bak  3355914          

 7/1/10 backup201007010100.bak  4333367     977453  
 7/2/10 backup201007020100.bak  4355963     22596   
 7/3/10 backup201007030100.bak  4380896     24933   
 7/4/10 backup201007040100.bak  4380404     -492    

 8/1/10 backup201008010100.bak  4507775     1151861 
 8/2/10 backup201008020100.bak  4507777     2   
 8/3/10 backup201008030100.bak  4532492     24715   
 8/4/10 backup201008040100.bak  4584028     51536   

在2010年7月3日和8月1日,没有生产。在其他日子里,生产大多是一致的,因此预计数据库的大小会有相当大的线性增长,但是大小如何变为负数。

在维护计划中,任务是:备份数据库任务(类型:Full Append Existing) - >收缩数据库(留出10%的可用空间)

2 个答案:

答案 0 :(得分:3)

备份过程的最后一步是附加日志中的数据,以反映在备份过程中对数据库所做的任何更改,这可以解释您所看到的差异。

答案 1 :(得分:2)

SQL Server有两步存储数据的过程。首先,您的数据进入日志文件,它不仅包含您插入的数据,还包括SQL对您的数据执行的操作的整个列表。因此,如果发生错误,SQL可以“重放”您的交易。

在某些时候CHECKPOINT发生,ans数据被写入数据文件。日志文件有增长和缩小的趋势。

在BACKUP期间,SQL会在查看BACKUP时完全写入数据和日志文件。这就是你可以看到尺寸差异的原因。