我有一份工作要每天完整备份我的数据库。我每天在数据库中通常有200到300条新记录。但是,备份文件的大小始终相同,为7,472 KB。为什么在记录数量增加时始终固定。数据库文件规范如下:
Logical Name ------ File Type----Filegroup---Initial Size----Autogrowth/ Maxsize
DBF-----------------Rows Data----PRIMARY-----4---------------by 15 MB, Unlimited
DBF_Data------------Rows Data----FG_Data-----221-------------by 15 MB, Unlimited
DBF_Index-----------Rows Data----FG_Index----3---------------by 15 MB, Unlimited
DBF_Log-------------Log--------Not Applicable- 793--------- by 10 percent,Limited to 2097152 MB
这是我写的每日备份代码
declare @Date nvarchar(10)
select @Date=cast( cast(getdate() as date) as nvarchar)
declare @Path nvarchar(100)
select @Path= 'C:\PAT Daily BK\PAT' + @Date +'.Bak'
BACKUP DATABASE PAT TO DISK =@path
答案 0 :(得分:1)
在数据库扩展到初始大小之前,所有备份都将是初始大小(压缩除外)。在开始扩展之后,如果扩展量设置为大于附加记录消耗的空间量,那么备份可以预期在多天内保持相同的大小,但是当它必须再次扩展时最终会增加。 / p>
无论数据是否保证,SQL Server数据库都会占用所有已分配的空间。在用完该空间后,它将遵循您为扩展设置的规则。
更新:上面解释了加密数据库的观察行为,但未解释未加密数据库的行为,因为未加密数据库的备份将与数据库的大小相关。