這里使用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語句都給生成好了, 我們直接復制執行就要可以了。