在論壇看到一個文章,說資料庫變慢了一段時間,發現這段時間資料庫檔案的最後修改時間跟變慢的世界一致,想知道這段時間是否檔案確實增長了。
其實SQL Server提供了資料增長的Event,而且Default Trace裡面就記錄了。
下面我們做個測試,我建立了一個新的資料庫,建立表然後插入資料:
createtabletest(testvarchar(100))
go
insertintotestvalues (replicate('a',100))
go 100000
現在查詢Default Trace:
declare @TraceFileasvarchar(max)
select@TraceFile=path fromsys.traces
selectDatabaseName,FileName,StartTime
from::fn_trace_gettable(@TraceFile,default)--替換你自己的Trace檔案地址
whereEventClass= 92 or EventClass= 93 andStartTime> '2013-06-2813:09:49.767'
關於Event 92和93的解釋:
select*fromsys.trace_eventswheretrace_event_id= 92 or trace_event_id= 93
650) this.width=650;" title="1.png" style="float:left;" src="http://www.bkjia.com/uploads/allimg/131228/22232330O-0.png" />
結果如下:
650) this.width=650;" title="2.png" style="float:left;" src="http://www.bkjia.com/uploads/allimg/131228/2223235305-1.png" />
可以看到資料庫增長的記錄。
本文出自 “關注SQL Server技術” 部落格,請務必保留此出處http://lzf328.blog.51cto.com/1196996/1231688