我有一个关于SQL日志文件大小以及在日志文件备份后应该设置什么的问题。我知道这取决于很多因素,并且没有正确或错误的数量(相对而言,因为我不会在默认情况下在1 MB处开始记录),但是应该有多少VLF应该存在如果我们做了大约200MB的事务(或者我们的.mdf文件增长了那么多),那么这个VLF有多大或者日志文件有多大?我已经阅读了Kimberly Tripp和Paul Randal的博客,但最好还是有雾。SQL 2005日志文件初始大小
回答
就像你说的那样,这是一个'取决于'的答案。我可能会过分简化一些事情,但通常我会像这样描绘过程:
在将'stuff'写入数据文件之前,每个事务都先写入日志。 日志永远不会被清除。当日志文件“翻转”时,写指针会移回文件的顶部,并继续在旧文件上再次写入。
所以日志至少需要是最大的交易 日志大小的尺寸。
接下来考虑的是并发用户的数量。当您的 有10个用户同时进行最大的交易时,您明白了。
另一个考虑因素是使用强度。检查点发生之前累积多少数据。这是当日志数据以批处理方式写入到mdf文件时。
最后要考虑的是您的恢复模式。在完全恢复 模式下,日志文件尚未受到 事务日志备份“保护”的部分无法翻转,并且将继续增长,直到进行事务日志备份。
每个数据库只需要一个物理日志文件。 Sql服务器一次只能写入一个文件。
您希望拥有尽可能少的虚拟日志文件。为日志文件提供足够的初始空间,以便尽可能减少自动增长。 VLF是通过自动增长过程创建的。
而且,当你自动增长时,确保它的体积正在增长。还要记住,每个vlf都需要先被清零。在可以使用之前,文件需要完全填充零。当你指定非常大的数据块(比如说1 GB)时,这个数据库上的每个查询都将排队,直到完成零输出过程。
当我对日志需求毫无头绪时,我个人从500 MB大小开始,自动增长100 MB块。从那里开始,我监控汽车增长事件并根据需要进行调整。
当涉及到日志文件时,是否有任何'最佳实践'? Msft是否有任何建议值?我只是在这里问,因为我读过的书和Msft网站并不总是为这些模糊的猜测类型的问题提供最好的。 – ctmcklowe96
历史通常是未来规模的最佳预测指标。
它在备份之间的日志通常会达到20 GB,然后您可以预计它会在备份之间达到20 GB。
如果你的尺寸为20GB,那么它不一定会增长。
如果日志必须增长20倍甚至100倍,那么不是那么大的一笔交易。
如果日志必须增长1000倍,那么您肯定应该将其大小设置错误。
一个1 mb的日志,一次只能增长1 MB,达到1000 MB是不好的。
一个100 mb增长100%只需增长4倍达到1600 mb。
还有最大尺寸。
恢复模式对日志大小有巨大的影响。
还有很多要考虑的比初始大小。
另外看看把日志放在一个单独的驱动器来传播IO。
看看把温度放在一个单独的驱动器来传播IO。
- 1. 收缩低于初始大小的数据文件SQL Server 2005
- 2. SQL Server - 日志文件 - 零初始化
- 3. Microsoft SQL事务日志文件大小
- 4. 管理SQL日志文件大小
- 5. MongoDB日志文件大小
- 6. SQL Server 2005的事务日志太大
- 7. SQL Server 2005数据库日志文件很大,完整
- 8. 在SQL Server 2005中确定最佳日志大小
- 9. 日志文件大小是巨大的
- 10. 事务日志备份文件大小
- 11. SQL服务器中的巨大大小日志文件
- 12. ActiveMQ日志日志大小
- 13. SQL Server 2005和Windows事件日志
- 14. MySQL日志文件的性能/大小
- 15. 限制德比日志文件大小
- 16. 限制大小tinyproxy日志文件
- 17. 限制mysql日志文件大小
- 18. Apache2日志文件大小和性能
- 19. iPhone中的日志文件大小
- 20. 日志4j TimeBasdRollingPolicy文件大小限制
- 21. WAMP限制日志文件大小
- 22. log4j console appender和日志文件大小
- 23. SQL日志文件越来越大
- 24. 如何跟踪SQL Server中的日志文件大小演变?
- 25. 大小超过5GB的SQL Server日志文件
- 26. MS SQL Server 2005:错误日志太大,越来越大
- 27. 初始化大小
- 28. 如何管理SQL Server日志大小
- 29. Apache grep大日志文件
- 30. 设置最大事件日志大小
备份前有多大? – Paparazzi
我应该通过说我们的日志的初始大小是20g,但是截断是由备份软件(Veeam)完成的。我不知道这种截断是否是我们应该做的,因为它可能会或可能不会正确处理VLF。也许Veeam和SQL Server(2005首选)用户可以帮助回答这个问题。 – ctmcklowe96