我经常看到有人在做这样一项工作,就是在
分离一个数据库之后,删除日志文件以缩减它。其实这是一个非常危险的操作,它可能导致你的数据库损坏。
尽管你可以在没有日志文件的情况下添加数据库,但这并不是所有情况都可以。有时SQL Server无法恢复并创建新的日志文件,这样你就可能会失去整个数据库。
如果你的数据库不断地增长并已形成很大的规模,你肯定会将完全恢复模式换成简单恢复模式。这样可以帮助你控制事务日志文件大小,而且是绝对安全的。唯一的缺点就是你不能再做事务日志即时
恢复了。
那么为什么很多人都在做删除事务日志的工作呢?通常情况下,删除日志是安全的,但是事务日志不是普通的日志文件。一个事务日志包含了数据库变更的每一条记录,还有变更之前与之后的值。在交付给数据库之前,所有的变更都已经写入到事务日志了,所以如果服务器出现故障那么数据库也将保持一致状态。
如果你的日志文件仅仅是比较大,且需要进行缩减时,你可以使用DBCC SHRINKFILE命令来缩减日志文件的大小,但不建议定期执行这一任务。