Sql-Server

磁碟使用報告 SSMS - 查詢以獲取相同的資訊

  • May 13, 2020

我想要一個查詢獲得與磁碟使用報告中相同的資訊,部分數據/日誌文件自動增長/自動收縮事件

在此處輸入圖像描述

我想建立一個自定義監控報告,但我找不到該報告的來源。我唯一能找到的是這個資訊來自:

sys.fn_trace_gettable

但我不知道我必須做哪些欄位或連接才能具有與上述報告相同的功能。

編輯:我需要這些領域,也需要增長的規模(用於分析目的) 在此處輸入圖像描述

謝謝你的幫助。

如果你只是想查找自動增長和收縮事件,你可以試試這個:

DECLARE @path NVARCHAR(260);

SELECT @path = REVERSE(SUBSTRING(REVERSE(path), CHARINDEX('\', REVERSE(path)), 260)) + N'log.trc'
FROM   sys.traces
WHERE  is_default = 1;

SELECT   te.name AS EventName,
        t.DatabaseName,
        t.DatabaseID,
        t.NTDomainName,
        t.ApplicationName,
        t.LoginName,
        t.SPID,
        t.Duration,
        t.StartTime,
        t.EndTime,
        (IntegerData * 8 / 1024.) as ChangeInSize
FROM     sys.fn_trace_gettable(@path, DEFAULT) AS t
JOIN     sys.trace_events AS te
ON t.EventClass = te.trace_event_id
WHERE    te.name = 'Log File Auto Shrink'
        OR te.name = 'Data File Auto Shrink'
        OR te.name = 'Log File Auto Grow'
        OR te.name = 'Data File Auto Grow'
ORDER BY t.StartTime DESC;

改編自 Aaron Bertrand在此處的查詢。

有關在此處查詢預設跟踪的更多資訊。

引用自:https://dba.stackexchange.com/questions/187191