截断日志

作者:leen 来源:ITPOW(原创) 日期:2006-12-11

删除日志记录以减少逻辑日志的大小的过程为截断日志。

为什么说是减少逻辑日志的大小,而不是减少物理日志的大小呢?因为日志虽然减少了,可是物理空间并没有减少,具体见后。

永远不能截断事务日志的活动部分。

日志的活动部分是指什么呢?日志的活动部分是任何时间恢复数据库所需要的日志部分,也就是说,无论恢复哪一个数据库,都需要那么一点点最新的日志,姑且这样理解。而未活动部分的日志是不能用于回滚事务。活动部分与未活动部分即活动部分的起点,称为最小恢复日志序号(MLSN)。

日志截断在以下情况发生:

  • BACKUP LOG 时。SQL Server 在完成事务日志备份后将自动截断事务日志中的不活动部分,备份数据库不会截断日志。
  • 在每次处理检查点时(对于简单模型)。

截断不减少物理日志文件大小。

截断相当于清空这些空间,但是这些空间还是被 SQL Server 所保留,并未还给操作系统,通过执行 DBCC SHRINKDATABASE(数据库名) 时减少物理空间。

相关文章