我正在使用BrentOzar
的SQL Server First Responder Kit,因为我属于“管理 Microsoft SQL Server 的开发人员。如果它们出现故障或运行缓慢,那是你的错。”
运行警告之一sp_blitz
如下:
[DB] 数据库文件 DB_log 的最大文件大小设置为 10240MB。如果空间不足,即使可能有可用的驱动器空间,数据库也会停止工作。
日志文件与操作系统位于不同的驱动器上,我确实限制了它们的增长。所有数据库都有简单的恢复模型(大部分数据是通过复制和 ETL 自动获取的,从上次备份恢复对我来说就足够了)。
该数据库有大约 20GB 的数据。
问题:如果恢复模式不强制我备份日志,数据库怎么会停止工作?
当有人执行 BEGIN TRAN,插入一行,锁定他们的计算机,然后回家过周末时,您的日志文件会越来越大。
那将是一件坏事™。
与其面临中断,不如让日志文件增长,并使用监控工具获取出现问题的警报。
在简单恢复模式下,数据库仍然使用日志文件。不同之处在于此日志文件不需要日志备份来截断(为空)。
长时间运行的事务可能会填满该日志文件,如果 SQL 无法写入它,数据库将停止可用。
正如布伦特所建议的那样,如果您没有共享同一驱动器的更关键的数据库,则应该让文件增长直到填满驱动器(您位于单独的驱动器上,这样不会影响操作系统)。