天天看點

SQL Server Profiler和資料庫引擎優化顧問



簡介

          說到Sql的【性能工具】真是強大,SQL Server Profiler的中文意思是SQL Server事件探查,這個到底是做什麼用的呢?我們都知道探查的意思大多是和監視有關,其實這個SQL

Server Profiler就是一個Sql的監視工具,可以具體到每一行Sql語句,每一次操作,和每一次的連接配接。感覺這個工具的作用還是很大的,給大家分享一下,對于新手了解Sql語句的寫法和提高語句的性能方法有很大的幫助。

    SQL Server Profiler使用方法

     我們單擊開始--程式--Microsoft SQL Server 2005--性能工具--SQL Server Profiler    如下圖

然後會出現如下界面

SQL Server Profiler和資料庫引擎優化顧問

我們單擊檔案---【建立跟蹤(N)...】,這是一個多視窗多任何的工具,我們可以同時建立不同的跟蹤視窗,也可以是不同的資料庫 接着看

SQL Server Profiler和資料庫引擎優化顧問

在這裡我們輸入 我們的跟蹤的資料庫的伺服器名稱,使用者名和密碼等資訊。單擊連接配接進入下一個界面

SQL Server Profiler和資料庫引擎優化顧問
SQL Server Profiler和資料庫引擎優化顧問

上圖中左面的可以進行一個基本設定,使用的模闆選擇,和檔案的儲存選擇等。我們一般使用預設的就OK了,不用動上面的東西,右面的圖是事件選擇,也就是說我們要跟蹤的事件有那個,在這裡可以一一的選擇,基本上Sql上有的事件都有,包括你用SQL Server Management Studio操作資料庫的過程都可以跟蹤的到。具體的事件和說明大家可以自己看一下。 隻要單擊顯示所有事件就可以進行全部事件的選擇了。    我們還可以對統計的字段進行篩選,單擊任意一個列标題可以檢視列的說明如下圖

SQL Server Profiler和資料庫引擎優化顧問

我們從上圖上依次說明 為:      

TextDate            依賴于跟蹤中捕獲的事件類的文本值;

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          依賴于跟蹤中捕獲的事件類的二進制值。

      然後我們單擊運作就可以,當然如果有興趣的話你也可以對列進行重新排列和篩選,隻要單擊下面相應的按鈕根據提示操作就要可以了,我們這裡就安預設的進行

SQL Server Profiler和資料庫引擎優化顧問

通過上面的圖我們就可以清楚的跟蹤到每一步操作是過程了, 現在如果大家對那版的Sql語句的寫法不怎麼懂的話就可以參考上面的,而且 是時時的,你在Sql裡操作幾下這裡就會出現相應的Sql語句,也是一個學習和提高的好工具 不僅僅是這樣,我們還可以對其中的資料進行分析,查詢,跟蹤可以暫停,開始和停止操作,可以同時啟動多個跟蹤,同時跟蹤不同的資料庫和表 如果和Sql的資料庫引擎優化顧問配合使用的話就更好了,可以分析出來你的Sql語句性能如果,而且還會告訴你怎麼修改會更好,我們一起來看一下吧

     資料庫引擎優化顧問使用方法

    有了這個跟蹤的記錄我們怎麼樣使用資料庫引擎優化顧問對其進行分析優化呢?當然第一步我們要先把跟蹤到的記錄導出到檔案.trc類型的檔案。單擊檔案--另存為

SQL Server Profiler和資料庫引擎優化顧問

   假如我們把檔案儲存為123.trc      現在我們來打開資料庫引擎優化顧問  我們單擊開始--程式--Microsoft SQL Server 2005--性能工具--資料庫引擎優化顧問 如下圖

SQL Server Profiler和資料庫引擎優化顧問

和上面一樣我們要先輸入資料庫的登入資訊 單擊連接配接進入如下界面

SQL Server Profiler和資料庫引擎優化顧問
SQL Server Profiler和資料庫引擎優化顧問

      我們可以看一下界面,一般不用選擇隻要安預設的就OK了,需要配置的我上面都有注釋。在這裡大家一定要記得選擇用于工作負荷的資料庫和表,意思就是設定要分析的資料庫否則會分析不成功。 現在就可以單擊開始了

SQL Server Profiler和資料庫引擎優化顧問

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

SQL Server Profiler和資料庫引擎優化顧問
SQL Server Profiler和資料庫引擎優化顧問

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