1. 程式人生 > 其它 >SQL Server Profiler的使用

SQL Server Profiler的使用

這裡使用SQL Server 2008 R2版本

一、SQL Server Profiler的使用

1. 在安裝SQL Server 資料庫時,請保證安裝了SQL Server Profiler,預設情況全部安裝都會自動安裝上。

2. 開啟SQL Server Management Studio,在選單中,找到“工具”選單,找到SQL Server Profiler選單項,如下圖所示。

3. 選擇“事件選擇”,勾選常用的幾項即可,如下圖所示。

4. 選擇“顯示所有列”,之後在列表中,勾選“DatabaseName”項。

5. 設定篩選器:

過濾資料庫名稱:因為一個數據庫例項中如果有多個數據庫,那麼不篩選資料庫名稱,那麼所有資料庫上的執行語句都能監控得到。

還可以設定Duration,篩選不同執行時間的sql語句,例如可以過濾執行時間較長的sql語句,選擇可以優化sql語句。

如果同一個資料庫,多個人訪問,只想檢測自己操作的語句怎麼辦?可以給資料庫建立一個自己登陸的資料庫賬戶(檢測完後可以刪除此使用者),之後,在LoginName篩選器中,篩選自己登陸的資料庫賬戶即可。

篩選監測TextData:%是個萬用字元,意思就是篩選select開頭的語句。當然這可以自己隨便定義,如update%,delete%....。

設定之後點選【執行】則開始監控了,監控畫面如下。

我們從上圖上依次說明 為:
TextData 依賴於跟蹤中捕獲的事件類的文字值;
ApplicationName 建立 SQL Server 連線的客戶端應用程式的名稱。此列由該應用程式傳遞的值填充,而不是由所顯示的程式名填充的;
NTusername Windows 使用者名稱。
LoginName 使用者的登入名(SQL Server 安全登入或 Windows 登入憑據,格式為“域\使用者名稱”)
CPU 事件使用的 CPU 時間(毫秒)。
Reads 由伺服器代表事件讀取邏輯磁碟的次數。
Writes 由伺服器代表事件寫入物理磁碟的次數。
Duration 事件佔用的時間。儘管伺服器以微秒計算持續時間,SQL Server Profiler 卻能夠以毫秒為單位顯示該值,具體情況取決於“工具”>“選項”對話方塊中的設定
ClientProcessID 呼叫 SQL Server 的應用程式的程序 ID。
SPID SQL Server 為客戶端的相關程序分配的伺服器程序 ID。
StratTime 事件(如果可用)的啟動時間。
EndTime 事件結束的時間。對指示事件開始的事件類(例如 SQL:BatchStarting 或 SP:Starting)將不填充此列。
BinaryData 依賴於跟蹤中捕獲的事件類的二進位制值。

對於監控的內容,可以儲存,在監控介面的【檔案】選單中,選擇另存為,選擇想儲存的格式即可,下次如果想看資料,可以直接開啟儲存的檔案。

二、資料庫引擎優化顧問

找到資料庫引擎優化顧問,進入如下介面

一般不用選擇只要按預設的就OK了,在這裡一定要記得選擇用於工作負荷的資料庫和表,意思就是設定要分析的資料庫否則會分析不成功。 現在就可以單擊開始了

在這裡我們可以看到分析成功後的分析報告,這還不算,我們單擊上面的 建議選項卡

在這裡還給出了你的哪些表,需要優化,應該怎麼建立索引和檢視才能更有效的提高效能,更好玩的是連需要優化的Sql語句都給生成好了, 我們直接複製執行就要可以了。