Profiler 簡介
SQL Server Profiler 是即時圖形化監控工具,協助 DBA 觀察資料庫與伺服器行為:死結、嚴重錯誤、T-SQL 陳述式、預存程序呼叫等。監控資料可存入資料表或檔案,事後逐步重播分析。
常監控事件類別
- 登入連線成功/失敗/中斷
DELETE、INSERT、UPDATE 命令
- 遠端預存程序呼叫(RPC)狀態
- 預存程序啟動/結束與內部每條陳述式
- 寫入錯誤記錄檔的錯誤
- 游標開啟/關閉
- 資料庫物件鎖定請求/釋放
原則:僅監控必要事件,避免增加系統負擔與追蹤檔案過大。
建立追蹤步驟
- 啟動 Profiler,File → New → Trace,開啟 Trace Properties 對話框。
設定追蹤名稱、類型(共用/私有)、輸出目的地(檔案/資料表)。

- 切換 Events 標籤,從 Available Events 選取欲監控事件點擊 Add 加入 Selected Events。

- 切換 Data Columns 標籤,勾選需記錄的資料欄(如 EventClass, TextData, Duration, SPID 等)。

- (選擇性)設定 Filters 篩選特定 SPID、資料庫、使用者等。
- 點擊 Run 開始追蹤,工具列可暫停/停止/儲存。
進階應用
- 將追蹤儲存為檔案(
.trc)離線分析或匯入資料表查詢。
- 使用 Replay 功能在測試環境重播生產負載進行壓力測試。
- 搭配
sp_trace_create 等系統預存程序自動化建立伺服器端追蹤。
小結
SQL Server Profiler 是診斷效能瓶頸、死結、錯誤的利器。合理選取事件與欄位、善用篩選,可在最小化負擔下獲得最大價值資訊。