SQL server實戰優化終極武器

SQL server實戰優化終極武器

數據庫的通病就是在使用一段時間後會出現數據庫查詢緩慢,性能下降,甚至無法正常使用。在這個時候就需要對數據庫進行優化。可是,到底優化什麼?這卻是一個難點。別怕,通過這篇文章,保證讓你對數據庫優化能力有一個質的提高。

大家都知道,對數據庫優化最主要的就是對數據庫的查詢進行優化。可是用於查詢的SQL語句那麼多,到底應該優化哪一條或幾條呢?這就需要藉助我們的終極武器——“SQL Server profiler”SQL分析器來準確查找了。

如何使用SQL分析器捕捉到需要優化的語句呢,請看下面詳細介紹。

SQL Server profiler是SQL Server安裝自帶的。它可以在SQL Server 的性能工具中找到。

image

想要準確的撲捉到需要優化的SQL語句僅僅使用SQL分析器還是不夠的,還需要藉助“性能監視器”的力量。

image

有了這兩樣東西,“SQL優化大師”之路就可以開啓了。(開開玩笑,離真正的大師還遠着呢)

1 首先打開SQL Server分析器和性能監視器。

2 在性能監視器的“計數器日誌”中新建一個計數器

image

3 輸入日誌名稱後進入到設置界面。單擊“添加計數器”按鈕。

image

4 選擇需要監測的項目。SQL主要需要監測的無非就是內存,CPU。在這裏可以根據具體的實際情況選擇監測對象。

image

如果實在不知道該選擇哪些,可以在這裏選擇“添加對象”

image

將CPU,內存的所有項目都監視起來。

image

這樣 一個計數器日誌就創建完成了。

image

5 然後開啓SQL分析器,新建一個跟蹤。

image

6 跟蹤屬性可以選擇默認

image

7 新建好跟蹤後,就開始監視着臺SQL服務器的性能了。如果當前SQL服務器是給一個網站做服務,那麼當別人在訪問這個網站時自然會在SQL服務器中引用大量的SQL語句,只要找到在訪問這個網站是使用什麼SQL語句最耗費資源,就可以針對這一條或幾條SQL語句進行有針對性的優化。SQL服務器的性能自然會提高。(同樣的,只要是應用到數據庫的程序,都可以用這一方法優化數據庫。最顯著的例子就是網絡遊戲的數據庫)

那麼到底要如何找到最耗費資源的SQL語句呢?(因爲這裏是實驗環境,模仿真實的網站或遊戲數據庫有些困難,所以,我僅僅是在SQL控制檯中模仿瀏覽網站點擊引用SQL語句)

下面紅框內就是SQL分析器所監視到的SQL語句的數量。

image

8 這時將跟蹤文件“另存爲”到桌面。(位置自選,方便記憶)

image

9 停止SQL分析器和“性能監視器”

image

image

10 再以打開“跟蹤文件”的方式打開剛纔保存在桌面的跟蹤文件。

image

11 選擇“導入性能數據”

image

12 選擇“性能監視器”的性能監視文件。位置就是設置“計數器日誌”是的位置。(第4步)

image

13 將這3個計數器全部勾選。按“確定”後出現一個警告,不用理會,按確定

image

14 在“1”中選擇線條的匯聚點,不用理會下面,只看上面。在“2”中選擇最近的SQL查詢語句(也就是select語句)。將“3”中的SQL 語句複製下來。

image

15 將複製下來的SQL 語句放在“數據庫引擎優化顧問”中進行分析。

image

最後將分析結果創建索引,這樣一個實戰中有針對性的數據庫優化項目就做成了。

怎麼樣,這樣有針對性的終極武器夠分量吧。

因爲篇幅問題,如果不會使用“數據庫引擎優化顧問”的可以看看我下一篇博文。專門說明“數據庫引擎優化顧問”的使用方法。在這裏就不贅述了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章