SQL Server跟蹤工具Profiler的使用


.什么是SQL Profiler

SQL Server Profiler 是一個功能豐富的界面,用於創建和管理跟蹤並分析和重播跟蹤結果。 事件保存在一個跟蹤文件中,稍后試圖診斷問題時,可以對該文件進行分析或用它來重播特定的一系列步驟。

 

.為什么要使用SQL Profiler

在實際開發中,我們的數據庫應用系統因為不可避免會存在有大量表,視圖,索引,觸發器,函數,存儲過程,sql語句等,所以會出現一系列問題,有問題不可怕,找對工具很重要。接下來我就介紹一款性能檢測工具--SQL Server Profiler,它可以對sql運行情況進行跟蹤,從而找出問題所在。 SQL Server Profiler 是 SQL 跟蹤的圖形用戶界面,用於監視數據庫引擎或 Analysis Services 的實例。 您可以捕獲有關每個事件的數據並將其保存到文件或表中供以后分析。

例如:

 可以對生產環境進行監視.

 了解哪些存儲過程由於執行速度太慢而影響了性能。

 同時SQL Server Profiler 用於下列活動中:

 逐步分析有問題的查詢以找到問題的原因。

 查找並診斷運行慢的查詢。

 捕獲導致某個問題的一系列 Transact-SQL 語句。 然后用所保存的跟蹤在某台測試服務器上復制此問題,接着在該測試服務器上診斷問題。

 監視 SQL Server 的性能以優化工作負荷。 有關為數據庫工作負荷而優化物理數據庫設計的信息,請參閱數據庫引擎優化顧問。

 使性能計數器與診斷問題關聯。

 SQL Server Profiler 還支持對 SQL Server 實例上執行的操作進行審核。 審核將記錄與安全相關的操作,供安全管理員以后復查。

三.SQL Profiler的使用方法

1.首先是打開SQL Profiler,如下圖:

 

2.打開工具選擇對應的服務器,如下圖:

 

3.點擊確定之后將標簽頁切換到事件選擇頁簽,勾選如下選項(有的服務器默認會顯示所有列,這里選擇下圖中的三個即可),如下圖:

 

5.打開列篩選器的相應界面后,可以根據兩種方式進行篩選過濾,分別是DataBaseName和HostName,如下圖:(以下步驟可跳過,直接點擊運行也可看到數據)

6.如果是選擇DataBaseName進行過濾的時候,返回主界面找到你所需要跟蹤的數據庫名,如下圖:

7.查找到對應的數據庫名稱之后,可以在DataBaseName過濾條件中填入對應的值,如下圖:

 

8.也可通過程序主機名進行過濾(例如:我的程序主機名是SKTNB033),如果不清楚自己的主機名可通過語句(select HOST_NAME())進行查詢。

 

9.就我個人而言,SQL Profiler可以用做兩個用途,一個是查看執行過的SQL,將語句copy出來放到查詢分析器執行,找到問題數據源頭;另外一個就是查看語句執行時間,找出耗時較長的語句對其進行優化,如下圖: 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM