SQL Server Profiler 是圖形化即時監視工具,能協助系統管理員監視資料庫和伺服器 的行為, 比如死結的數量,致命的錯誤,跟蹤Transact-SQL 陳述式和預存程序。可以把這些 監視資料存入表或檔案中,並在以後某一時間重新顯示這些事件來一步一步地進行分析。
通常我們使用SQL Server Profiler 僅監視某些插入事件,這些事件主要有:
登入串連的失敗、成功或中斷連線;
DELETE、 INSERT、 UPDATE 命令;
遠端預存程序調用(RPC) 的狀態;
預存程序的開始或結束,以及預存程序中的每一條語句;
寫入SQL Server 錯誤記錄檔的錯誤;
開啟的遊標;
向資料庫物件添加鎖或釋放鎖。
我們之所以不監視過多的事件,原因在於對事件進行監視往往增加系統的負擔,並且使追蹤檔案很快增長成大容量檔案,從而引起不必要的麻煩。
1.建立跟蹤
在SQL Server 中可以使用SQL Server Profiler 建立跟蹤,也可以使用跟蹤建立嚮導或是擴充預存程序。在這裡我們將介紹如何使用SQL Server Profiler 來建立跟蹤。
(1) 啟動SQL Server Profiler (與啟動SQL Server Enterprise Manager 一樣), 從File 的下拉式功能表中選擇New, 再選擇Trace 選項,此時開啟Trace Properties 對話方塊.
在該對話方塊中定義跟蹤的名稱、類型、運行跟蹤的SQL Server 以及跟蹤輸出資料的 儲存方式。其中各選項的含義為:
Shared: 表示所有被允許登入到運行SQL Server Profiler 伺服器的使用者都可以使用 該跟蹤;
Private: 表示只有當前建立者可以使用該跟蹤;
Capture to file: 表示將跟蹤結果儲存到檔案中,可減少進行跟蹤時的記憶體開銷;
Capture to table: 表示將跟蹤結果儲存到表中,這極易引起較大的額外系統開銷。
(2) 選中Events 標籤頁,用來確定將跟蹤哪些事件。在 Available Events 下的視窗中選擇要跟蹤的事件,底部的方框內便顯示出該事 件的含義,單擊Add ,增加到Selected Events 事件中;
(3) 選中Data Columns 標籤頁,在該對話方塊可以選擇跟蹤事件哪 些資料列,通常選擇那些我們比較關心的列。
(4) 選中Filters 標籤頁.
(5) 單擊“確定”按鈕完成跟蹤建立。
2. 查看、分析跟蹤
使用SQL Server Profiler 可以查看跟蹤中的事件數目據,在跟蹤中的每一行代表一個事 件,這些事件數目據是由跟蹤的屬性決定的。
可以把SQL Server 資料拷貝到其它的應用程式中,如SQL Server Query Analyzer 或Index Tuning Wizard 然後利用它們進行資料分析 , 但通常我們使用SQL Server Profiler 來進行跟蹤分析。
利用SQL Server Profiler 既可以開啟副檔名為.trc 的追蹤檔案,也可以開啟副檔名為.log 的記錄檔,以及一般的SQL 指令檔
因為跟蹤資訊通常儲存在檔案或表中,所以通過開啟表或檔案就可以查看、分析跟蹤。
開啟跟蹤的步驟為:
從File 菜單中選擇Open, 再選擇Trace Files.