有没有办法在 SQL Server 中获取事务日志已用空间的历史记录?

Mar*_*ick 2 sql-server transaction-log

我希望能够回顾并查看给定时间段内事务日志中的已用空间。对增长或文件大小不感兴趣,因为它们不会告诉我实际使用了多少空间。

我正在从简单模型切换到完整恢复模型,需要了解事务日志的大小。

Tib*_*szi 5

一般而言,默认情况下不会记录任何内容。所以,除非你有什么东西可以跟踪生成的日志量,否则你就不走运了。

通常,我们会建议您检查日志备份的大小,但据我所知,您没有这些,这里的目的是确定您需要多少空间。抓住 22。:-)

即使有一些主动监控,您也必须非常频繁地检查它,因为您永远不知道检查点何时启动并“截断日志”。您可以使用一个性能计数器:“日志文件已用大小 (KB)”。您可以从 sys.dm_os_performance_counters 获取值。即,创建一个作业非常容易,该作业使用 SELECT 检查所选数据库的 tlog 中的已用空间,将其存储在表中并每分钟执行一次该作业,或者您认为合适的任何频率。