1. 程式人生 > >SQL Server 事件探查器和資料庫引擎優化顧問

SQL Server 事件探查器和資料庫引擎優化顧問

簡介


          說到Sql的【效能工具】真是強大,SQL Server Profiler的中文意思是SQL Server事件探查,這個到底是做什麼用的呢?我們都知道探查的意思大多是和監視有關,其實這個SQL Server Profiler就是一個Sql的監視工具,可以具體到每一行Sql語句,每一次操作,和每一次的連線。感覺這個工具的作用還是很大的,給大家分享一下,對於新手瞭解Sql語句的寫法和提高語句的效能方法有很大的幫助。
    SQL Server Profiler使用方法


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

 

然後會出現如下介面

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

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

 

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

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

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


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

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

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

     

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

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

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