2010-12-14 79 views
8

是否有任何工具可以爲SQL Server 2005及更高版本執行查詢優化?是否有SQL Server的查詢優化工具?

我已經查詢了&沒有找到任何內容。

你有什麼建議?

如果重複這個問題之前,你可以關閉它,但我沒有看到類似

+2

你可能沒有看到重複的,因爲沒有這樣的工具 - 比人的頭腦外,也許是受資助SQL事件探查器,索引調整嚮導等。 – 2010-12-14 20:52:06

+0

我不寫太多SQL,但我得到這個問題很多,我很抱歉 – 2010-12-14 20:53:45

+0

如何將問題擴展到涉及該主題的書。我用dta(數據庫調優助理)玩了一下,大部分時間都是現在的感覺。 – 2010-12-14 20:55:52

回答

25

迄今爲止,我用於優化MS SQL Server查詢的最佳工具是Microsoft SQL Server Management Studio中的「包括實際執行計劃」選項。它顯示運行查詢時服務器執行路徑的詳細信息。 (請注意,這效果最好時,有表中的數據當然,如果沒有測試數據的好一點,任何的優化是純粹的理論呢。)

它基本上是給你三個非常重要的事情:

  1. 它告訴你哪些步驟需要最多的處理時間以及他們在該步驟中正在做什麼。
  2. 它告訴你哪些步驟可將大部分數據傳送到下一步,包括有多少條記錄,這有助於識別哪些地方可以更具體地瞭解所需的數據並排除不必要的記錄。
  3. 它爲您提供了深入瞭解SQL Server內部工作原理的知識,以及它如何處理您的查詢。這些知識將幫助您隨着時間的推移優化事物。
+0

您有關於優化全局查詢的提示嗎? – 2013-10-10 20:51:51

4

在SSMS什麼 - 工具|數據庫引擎優化顧問 - 不適用於Express版本。

+0

感謝您的提示! – 2015-10-14 06:58:59

2

最好的查詢優化器之一就是在SQL Management Studio中運行查詢,然後檢查查詢計劃。這將爲您提供關於它(或不)正在使用的索引的線索,以及如何更改查詢以利用這些索引。

0

正如約翰桑德斯評論說,最好的工具是你自己的想法。根據bernd_k的評論,這裏有一些關於銳化該工具的建議。

+0

不要試圖駁斥你的建議,但在專門詢問自動調整工具時,對於手動調整的建議似乎有些乏味。這就像要求一臺激光打印機,並得到改善書法的建議。我從個人的成就角度出發,但從工作的角度來看,您希望能夠快速提供結果。 – user3285866 2015-05-20 14:05:40

+0

也許他的觀點是你不能得到快速的結果。就像你無法得到一個工具來爲你寫你的應用程序一樣。在某些時候,你必須花時間學習和理解查詢速度緩慢的原因。許多性能問題需要重寫查詢或存儲過程。沒有工具會爲你做。 – NickG 2016-08-26 14:01:14

3

一個非常好的工具,現在免費使用Sen的Plan Explorer tryOne:https://sentryone.com/plan-explorer

(他們也有許多其它優化軟件,如Azure的特定軟件等)