2012-09-14

MSSQL *.trc 追蹤檔處理

在這裡使用 SQL Server 2008 R2 評估版

使用 SQL Server Profiler 開啟第一個追蹤檔, 接著使用
「檔案」>「另存新檔」>「追蹤資料表」
連結 DB 之後輸入資料表名稱即可。

但許多時候, 追蹤檔數目可能上百個, 這個時候全部轉為資料表以方便之後的分析。
在 SQL Server Management Studio 把之前的追蹤資料表內容清除, 接著新增查詢:
INSERT INTO testtrc (
 EventClass,
 TextData,
 ApplicationName,
 NTUserName,
 LoginName,
 CPU,
 Reads,
 Writes,
 Duration,
 ClientProcessID,
 SPID,
 StartTime,
 EndTime,
 BinaryData,
 DatabaseName,
 DatabaseID
)
SELECT 
 EventClass,
 TextData,
 ApplicationName,
 NTUserName,
 LoginName,
 CPU,
 Reads,
 Writes,
 Duration,
 ClientProcessID,
 SPID,
 StartTime,
 EndTime,
 BinaryData,
 DatabaseName,
 DatabaseID
FROM ::fn_trace_gettable('E:\DPLQEWEB.trc', DEFAULT);
這樣就可以把所有的 .trc 都放到資料表裡。在我的機器上讀入 trc 成為表格要 7 分鐘, 轉成資料表要 35 分鐘 (六百多萬筆)。

沒有留言:

FB 留言