天天看點

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

    資料庫應用系統性能低下,需要對其進行優化,

    如果不知道問題出在哪裡,可以使用性能檢測工具sql server profiler。

    如果知道問題出在哪裡,卻不知道如何解決,可以使用資料庫引擎優化顧問Database Engine Tuning Advisor

功能:檢測到資料庫中的所有操作,把監視的内容記錄到資料庫或者是檔案中。

檔案--建立跟蹤--顯示跟蹤屬性視窗

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

首先那個select%是個篩選監測的TextData。那個%是個通配符,他的意思就是篩選select開口的語句。當然這你自己可以随便定義,如update%,delete%....。

把那個排除不包含值的行也給帶上,然後确定,運作。然後在資料庫中運作一句select。你會發現他檢測到啦。

每列以此向右,從EventClass開始,我給你講講都是什麼。

    事件分類,申請了語句,應用程式名稱,作業系統使用者,資料庫使用者,cpu占用率,讀資料庫次數,寫資料庫次說,執行腳本用時,應用程式程序号,開始時間,結束時間等。

    事件選擇,你就把滑鼠放上去,他下面有中文的注釋。自己好好看看,然後根據你自己的需要把事件勾選上來。

     然後檔案-->>另存為,可以把這些監測到的資料儲存為檔案,或資料表。

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

   一般情況下,最長查詢時間的查詢語句就是最影響性能的原因存在。它不僅占用資料庫引擎大量的時間,還浪費系統資源,還影響資料庫應用系統的互動速度。再對資料用應用系統進行優化時,先找出他,對其優化,在建立跟蹤時,勾上TSQL-SQL:BatchCompleted.跟Stored Procedures-RPC:completed。這樣就能找出來這個最長時間查詢然後對其進行分析優化。

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor
Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

    就是占用cpu時間,跟讀寫IO的次數。建議事件包含Connect、Disconnect、ExistingConnection、SQL:BatchCompleted、RPC:completed,列包含writes,reads,cpu。

    在通路量,并發量都很大的資料庫中,如果設計稍不合理,就有可能造成死鎖,給系統性能帶來影響。事件包含:RPC:Starting、SQL:BatchStarting、Lock:DeadLock(死鎖事件)、Lock:DeadLockChaining(死鎖的事件序列)。

    資料庫引擎優化顧問先是接受sql server profiler檢測出來的sql,視圖,存儲過程,資料結構等等,然後他再自己分析,給出更好的索引,統計,分區等等建議資訊。

打開之後,你在上一個工具中儲存的的檔案,你就在這裡的工作負荷中選檔案,表就選表,把要分析的資料庫跟資料庫的表選上,也就是下面的用于工作負荷分析的資料庫選擇,跟下面的要優化的資料庫和表

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

然後選則你想要的優化選項

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor

根據需要,選上,進階選項裡面通常可以預設。确定。。

然後點左上角有一個開始分析。

分析完成

Sql性能檢測工具:Sql server profiler和優化工具:Database Engine Tuning Advisor