数据库的简单或完整恢复模型?
什么时候应该使用完整恢复模型,什么时候应该对数据库使用简单恢复模型? 我一直使用完整恢复模式,因为它是默认模式,但今天我遇到了此错误: SQL Server的Microsoft OLE DB提供程序(0x80040E14)数据库'数据库名称'的事务日志已满。要找出为什么无法重用日志中的空间的原因,请参阅sys.databases中的log_reuse_wait_desc列 特定的数据库实际上是服务器上最小,最不活动的数据库之一,因此我不知道该数据库上的日志如何充满,而不是其他数据库。 为了缩小日志并使数据库可再次访问,我使用以下命令将恢复模型从FULL更改为SIMPLE并缩小了逻辑文件日志 alter database myDbName SET recovery simple go dbcc shrinkfile('LOG FILE LOGICAL NAME', 100) go 它帮助,但现在我需要了解为什么它的帮助下,如何这种情况开始,如何防止这种情况在未来? 编辑: 每天晚上1点,我们都会对服务器上的每个数据库进行脚本化备份。这是由31行脚本完成的,其中最重要的部分是 set @Filename = 'D:\backup\' + convert(varchar, getDate(), 112) + ' - ' + @DBName + '.bak' set @Description = 'Full backup of database ' + …