SQL Server Profiler使用教程,通俗易懂才是王道

雲霏霏發表於2014-11-06

  做開發,平時難免和資料庫打交道,特別是寫儲存過程,對於我們這些不常寫SQL的人來說是一件極其痛苦的事,每次寫完執行總是有錯,如果用的是本地資料庫的話還好,可以在本機除錯SQL,那如果在資料庫在伺服器上面,除錯被禁用,那就悲劇了~

  最近,由於工作需求,寫一個儲存過程,有幾十個引數,資料庫在伺服器上面,寫完了,測試完查詢語句沒有問題,但是到了專案裡面查詢時就出錯,很是氣人!想到了用SQL Profiler這個工具,開啟選擇預設設定,開始跟蹤,暈,海量資料湧來,看的頭暈,根本找不到要跟蹤的語句。後來,經過百度搜尋和仔細研究,算是學會使用SQL Profiler了。下面和大家分享一下。

 

 一、SQL Server Profiler簡介

SQL Profiler是一個圖形介面和一組系統儲存過程,其作用如下:

  • 圖形化監視SQL Server查詢;
  • 在後臺收集查詢資訊;
  • 分析效能;
  • 診斷像死鎖之類的問題;
  • 除錯T-SQL語句;
  • 模擬重放SQL Server活動;

也可以使用SQL Profiler捕捉在SQL Server例項上執行的活動。這樣的活動被稱為Profiler跟蹤。

 

 二、SQL Profiler的簡單配置和使用

  不多說廢話了,關於SQL Profiler的介紹網上多的是,大家自己找吧。下面說到實用的,開始動手操作吧!(注:本地資料庫的就不用說了,可以除錯執行,主要說資料庫在伺服器上面的情況。)

  首先說明一下SQL Server Express版本是沒有SQL Profiler工具的,企業版有這個工具,其他版本沒有用過。下面來看下SQL Profiler在什麼地方,首先開啟SQL Server Management Sutdio,點選選單,Tools > SQL Server Profiler,如圖:

點選後,首先會出現登入介面,輸入使用者名稱密碼後,會看到如下介面:

第四行有一項Use the template,選擇Standard,如果是本地資料庫的話,訪問資料庫的只有你一個人,點選Run就可以了。如果在伺服器上,訪問資料的人很多,所以要對結果進行一些過了。然後,點選選項卡Events Selection,如圖:

可以看到Standard的預設選項,這個都不用管,選中核取方塊Show all columns,否則後面的HostName找不到。點選Column Filters...按鈕,開啟過濾選項頁面:

下拉找到HostName項,在Like裡面加入自己的計算機名稱,這樣就只顯示我們這臺計算機傳送的SQL了。

然後,點選OK,點選Run就開始跟蹤了,之後你在你電腦上面進行的資料庫訪問,都會被記錄下來。

注意:是在你電腦上面,你訪問伺服器上面的網站,資料庫訪問是在伺服器上面進行的,不是在你的電腦上面。只有你除錯執行的時候,才是從你的電腦訪問伺服器,才能被跟蹤到。

跟蹤結果如下:

 

選中某條記錄後就會顯示執行的SQL,至於儲存過程,我們可以清楚的看到傳入的引數,還可以複製出來,進行除錯。

如果記錄過多,可以選擇Edit > Find...下面的選單,進行搜尋。

 看到這裡,是不是突然感覺很簡單啊,呵呵,看了那麼多教程,講的東西挺多,搞半天找不到自己想要的東西,越整越煩!

 

 三、建立自己的模版,方便下次使用

  如果每次都改計算機名稱,很不方便,我們可以做一個自己的模版,下次使用時就不用再進行配置了。下面來看看如何建立自己的模版吧:

如圖,點選選單,開啟模版頁面.如圖所示:

輸入你自己的模版名稱,如MyProfiler,然後勾選Base new template on existing one:,就是基於某個已存在的模版就行修改,我們依舊選擇Standard,下面還有一個Use as default template for selected server type,就是設定為預設模版,勾選上後,我們每次新建跟蹤的時候就會預設選中我們新增的這個模版,建議勾上。然後點選Events Selection選項卡,設定HostName就可以了。完成後儲存就可以了。

然後,點選File > New trace...新建跟蹤,會看到我們新建的模版,並且是預設選中的,此時我們直接點選Run就可以繼續我們的工作了。

 

相關文章