TSQL:如何获取事务日志的大小?

Nie*_*sma 9 sql-server transaction-log

如何获取事务日志的当前大小?我如何获得尺寸限制?

我想对此进行监控,以便确定备份事务日志的频率.

我执行大型操作时通常会遇到事务日志问题.

kev*_*ers 13

基于SQL Server 2005,试试这个

SELECT (size * 8)/1024.0 AS size_in_mb,
  CASE WHEN max_size = -1 THEN 9999999   -- Unlimited growth, so handle this how you want
   ELSE (max_size * 8) / 1024.0
        END AS max_size_in_mb
FROM <YourDB>.sys.database_files
WHERE data_space_id = 0   -- Log file
Run Code Online (Sandbox Code Playgroud)

YourDB更改为您的数据库名称

对于所有数据库大小的总体,请尝试DBCC SQLPERF

DBCC SQLPERF (LOGSPACE)
Run Code Online (Sandbox Code Playgroud)

这应该在SQL 2000/2005/2008中有效