MSSQL 重复事务日志已满。需要知道是谁造成的
MSSQL Recurring Transaction Log full. Need to know who causes it
MSSQL V18.7.1
数据库的事务日志每小时备份一次。
此数据库日志的大小自动增长为 128Mb 最大 5Gb
这运行顺利,但有时我们的应用程序确实会出错:
'由于 'LOG_BACKUP'
,数据库 Borculo 的事务日志已满
我们在上午 8 点 15 分收到这条消息,而在上午 8 点 1 分,日志备份已完成(并已清空)。
如果我有一个脚本或命令来检查导致这种指数增长的原因,我会非常喜欢。
我们可以更频繁地备份(每 30 分钟一次)或更改大小,但问题并没有得到解决。
基本上我们的交易量应该不会出现这个问题。
可能某些任务是 运行(在我们的 ERP 中)导致的。
这不是每天都发生,但在上个月这是第 2 次。
事务日志是一个备份日志,可以从中获取信息。不是活跃的
谁能指出我正确的方向?
谢谢
每小时事务日志备份意味着在发生灾难时您最多可能会丢失一个小时的数据。
通常建议您尽可能频繁地备份事务日志。
每 15 分钟一次通常是一个很好的起点。但如果是业务关键型数据库,请考虑每分钟备份一次事务日志。
另外,为什么要限制事务日志文件的大小?如果您的磁盘上有更多 space 可用,请允许您的文件在需要时增长。
事务日志文件可能已满,因为有一些维护任务 运行(Index/Statistics 维护等)并且因为日志文件整整一个小时都没有备份,日志不会被截断一个小时,文件大小达到 5GB。因此出现错误消息。
我会做的事情,解决这个问题。
取消文件大小限制,或至少增加限制以允许它增长到大于 5 GB。
更频繁地备份事务日志,可能每 5 分钟一次。
将日志文件增长增量从 128MB 设置为至少 1GB(以减少 VLF 的数量)
当日志文件变满时,密切监视服务器上 运行 的内容,这很可能是一项维护任务(或者可能是一个错误的挂起连接)。
不是设置日志文件大小的最大限制,而是设置一些警报以在日志文件增长过多时通知您,这将允许您在没有任何干扰甚至潜在的情况下调查问题最终用户的停机时间。
MSSQL V18.7.1 数据库的事务日志每小时备份一次。 此数据库日志的大小自动增长为 128Mb 最大 5Gb
这运行顺利,但有时我们的应用程序确实会出错: '由于 'LOG_BACKUP'
,数据库 Borculo 的事务日志已满我们在上午 8 点 15 分收到这条消息,而在上午 8 点 1 分,日志备份已完成(并已清空)。
如果我有一个脚本或命令来检查导致这种指数增长的原因,我会非常喜欢。
我们可以更频繁地备份(每 30 分钟一次)或更改大小,但问题并没有得到解决。 基本上我们的交易量应该不会出现这个问题。
可能某些任务是 运行(在我们的 ERP 中)导致的。
这不是每天都发生,但在上个月这是第 2 次。
事务日志是一个备份日志,可以从中获取信息。不是活跃的
谁能指出我正确的方向?
谢谢
每小时事务日志备份意味着在发生灾难时您最多可能会丢失一个小时的数据。
通常建议您尽可能频繁地备份事务日志。
每 15 分钟一次通常是一个很好的起点。但如果是业务关键型数据库,请考虑每分钟备份一次事务日志。
另外,为什么要限制事务日志文件的大小?如果您的磁盘上有更多 space 可用,请允许您的文件在需要时增长。
事务日志文件可能已满,因为有一些维护任务 运行(Index/Statistics 维护等)并且因为日志文件整整一个小时都没有备份,日志不会被截断一个小时,文件大小达到 5GB。因此出现错误消息。
我会做的事情,解决这个问题。
取消文件大小限制,或至少增加限制以允许它增长到大于 5 GB。
更频繁地备份事务日志,可能每 5 分钟一次。
将日志文件增长增量从 128MB 设置为至少 1GB(以减少 VLF 的数量)
当日志文件变满时,密切监视服务器上 运行 的内容,这很可能是一项维护任务(或者可能是一个错误的挂起连接)。
不是设置日志文件大小的最大限制,而是设置一些警报以在日志文件增长过多时通知您,这将允许您在没有任何干扰甚至潜在的情况下调查问题最终用户的停机时间。