删除日志记录以减少逻辑日志的大小的过程为截断日志。
为什么说是减少逻辑日志的大小,而不是减少物理日志的大小呢?因为日志虽然减少了,可是物理空间并没有减少,具体见后。
永远不能截断事务日志的活动部分。
日志的活动部分是指什么呢?日志的活动部分是任何时间恢复数据库所需要的日志部分,也就是说,无论恢复哪一个数据库,都需要那么一点点最新的日志,姑且这样理解。而未活动部分的日志是不能用于回滚事务。活动部分与未活动部分即活动部分的起点,称为最小恢复日志序号(MLSN)。
日志截断在以下情况发生:
截断不减少物理日志文件大小。
截断相当于清空这些空间,但是这些空间还是被 SQL Server 所保留,并未还给操作系统,通过执行 DBCC SHRINKDATABASE(数据库名) 时减少物理空间。