SQL Server 效能問題的疑難排解

文章翻譯 文章翻譯
文章編號: 298475 - 檢視此文章適用的產品。
本文曾發行於 CHT298475
全部展開 | 全部摺疊

在此頁中

結論

如果要疑難排解效能問題,您必須完成系列的步驟,以釐清與判斷問題的原因。可能原因包括:
  • 封鎖
  • 爭用系統資源
  • 應用程式設計問題
  • 查詢或預存程序已長的執行時間
識別肇因是通常非常耗用時間,以及您可能需要花費數天來評估收集的資訊。複雜度效能的分析不是專屬於特定資料庫產品或組建號碼。所有的應用程式受限於效能限制由於資源、 [設計] 或 [使用狀況的因素。

如需詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
224587如何疑難排解與 SQL Server 的應用程式效能
若要協助識別並解決此問題,收集下列資訊在同一時間,並隨時好這些輸出請連絡 Microsoft 產品支援服務 」 (PSS) 之前,可以使用:
  • 封鎖程式 」 指令碼的輸出
  • SQL 的程式碼剖析工具追蹤記錄檔
  • SQL Server 效能監視器 」 記錄
附註如果您並不會收集這些資訊時的效能發生問題時,您可能必須收集所有資訊一次。這可以延遲疑難排解程序。

發生問題之後,收集下列資訊並讓其可以使用:
  • sqldiag 報表
  • Microsoft Windows NT 系統和應用程式事件記錄檔
在大部分情況下,PSS 都需要此資訊來了解環境以及效能問題的本質。如果任何的部份沒有可用資訊、 疑難排解程序可能會延長,識別效能問題可能會延遲。

即使您是目前並沒有遇到任何效能問題,Microsoft 建議您執行這項程序。如果發生效能問題,您就可以擷取必要的資訊能夠儘快出現。此外,如果您擷取比較基準 SQL 程式碼剖析工具記錄檔、 SQL Server 效能監視器記錄檔,以及封鎖程式指令碼時的應用程式正在執行,如預期般運作,則可以使用該當應用程式並不會執行為要比較的資訊預期的。

如果您收集這項資訊在高流量 SQL Server環境中,您可能會遭遇部份效能降低。不過,您必須有此資訊來找出問題的原因為了要疑難排解問題。SQL Profiler 追蹤對最大的影響力效能。如果效能嚴重降低,您可以自訂的 SQL藉由減少捕捉到的事件類型的 profiler 追蹤。限制SQL Profiler 追蹤應該提供一些改進。如果有任何問題或問題的設定與收集此資訊,請連絡 PSS。

封鎖程式 」 指令碼的輸出

封鎖指令碼會對用來識別的封鎖案例。不過,您可以使用指令碼的輸出,如果要疑難排解效能即使在封鎖的問題都不成問題。此輸出也有助於判斷查詢在等待資源,例如檔案 I/O 有關或交易不會認可或復原如預期般運作。 如需詳細資訊有關實作封鎖指令碼時,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
251004如何監視 SQL Server 7.0 封鎖
271509 如何監視 SQL Server 2000年封鎖

SQL 的程式碼剖析工具追蹤記錄檔

SQL Profiler 追蹤會擷取電腦上的活動執行 SQL Server。您可以使用這項資訊來識別慢速執行查詢,而非最佳的執行計劃。此外,SQL 程式碼剖析工具的文件效能方面的問題之前發生的事件系列,並以幫助找出癥結所在。

若要建立和實作的 SQL 程式碼剖析工具追蹤使用 GUI,請參閱下列 Microsoft 的 「 什麼監視 」 一節知識庫文件:
224587 如何疑難排解與 SQL Server 的應用程式效能
如需有關如何建立和執行 SQL 的程式碼剖析工具追蹤使用異動性 SQL 命令,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
289742如何建立 SQL Server 7.0 追蹤
283790 如何建立 SQL Server 2000年追蹤
如需有關如何監視所 SQL 的程式碼剖析工具追蹤使用異動性 SQL 命令,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
289279INF: 如何監視 SQL Server 7.0 追蹤
283786 如何監視 SQL Server 2000年追蹤
附註如果您有大量工作量的 SQL Profiler 追蹤,您可以使用「 索引微調精靈 」 中。「 索引微調精靈 」 中,會使用 SQL Server 查詢最佳化器判斷一組最合適的指定查詢的索引。「 索引微調精靈 」 是很有效率的工具,以判斷是否正確索引存在於您的資料庫。藉由實作索引,「 精靈 」所示,您可以增加您的應用程式的效能。

如需有關如何使用 「 索引微調精靈 」 的詳細資訊,請參閱「 索引微調精靈 」 中的主題 SQL Server 線上叢書 》。

SQL Server 效能監視器 」 記錄

SQL Server 通常會受到下列瓶頸:
  • CPU
  • 記憶體
  • 檔案 I/O
  • 鎖定、 封鎖或鎖死
您可以使用 SQL Server 效能監視器來識別這些方式潛在的瓶頸可能會影響 SQL Server。此外,您可以使用這個記錄檔當外部處理序識別大量使用這台電腦執行 SQL伺服器,並造成負面影響 SQL Server 效能。

您之前啟動 SQL Server 效能監視器,請確定磁碟計數器是在。若要這麼做,請從命令提示字元執行diskperf 。如果磁碟計數器不在中,執行diskperf y ,然後重新啟動電腦。

當您建立 SQLServer 效能監視器記錄、 收集下列資訊:
  • 分頁檔
  • 處理程序
  • 處理器
  • 所有的 SQL Server 計數器
  • 記憶體
  • 執行緒
  • 邏輯磁碟
  • 實體磁碟
  • 系統
附註15 秒的預設間隔應該足夠的時間來監視伺服器;不過,針對一些計時問題,您可能要減少的時間用來收集資料的間隔。

如需有關如何設定 SQL Server 效能監視記錄檔,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
150934如何建立效能監視器記錄以進行 NT 疑難排解
248345 如何建立 Windows 2000 中使用 [系統監視器記錄檔


附註如需有關如何監視 SQL Server 2005 中的效能的詳細資訊,請參閱 SQL Server 2005 線上叢書 》 的 〈 監視和微調的效能 〉 主題。

sqldiag 公用程式

Sqldiag 公用程式隨附 SQL Server。它會收集執行 SQL 的電腦的組態相關的重要資訊伺服器、 作業系統,並會回報給 SQL 的資訊伺服器錯誤記錄檔。有關如何使用 sqldiag 公用程式的資訊,請參閱SQL Server 線上叢書 》 中的"sqldiag 公用程式 」 主題。

如需有關如何執行在叢集的 SQL Server,sqldiag 按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
233332如何執行 SQLDIAG 上叢集/虛擬 SQL Server

附註在 [SQL Server 2005,SQLdiag 公用程式已有重大變更。這個公用程式的命令列引數不是 SQL Server 2000 相容的。這個公用程式可能會變更,以及應用程式或依賴它的命令列引數或行為的指令碼可能無法運作正確地在未來的版本。如需詳細資訊,請參閱 SQL Server 2005 線上叢書 》 中的"SQLdiag 公用程式 」 主題。

Microsoft Windows NT 系統與應用程式事件記錄檔

您可以使用 Windows NT 系統和應用程式事件日誌,以識別您看不到其他資料中的問題。這些記錄檔,協助提供完成伺服器活動的檢視,並提供更完整的認識環境。

若要儲存這些檔案的位置

下列的 Microsoft 檔案交換 FTP 伺服器可以讓您傳送及接收檔案進出 PSS 工程師:
ftp://ftppss.microsoft.com


針對詳細內容請參閱 Microsoft 檔案所提供的說明Exchange FTP 站台。




書籤: 9

其他相關資訊

?
摺疊此表格展開此表格
規則的軟體規則標題規則描述針對規則進行評估的產品版本
System Center 顧問SQL Server 有多個這會影響效能的現用追蹤System Center 警告器會檢查目前擷取資訊的預設追蹤非現用追蹤的存在。如果有其他正在執行,將會被儲存在 UNC 路徑,並擷取昂貴的 e 的追蹤,則會產生此警示火山口。檢閱這份文件中的資訊並適當地採取矯正措施。SQL Server 2008
SQL Server 2008 R2
SQL Server 2012



屬性

文章編號: 298475 - 上次校閱: 2012年9月18日 - 版次: 2.0
這篇文章中的資訊適用於:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
關鍵字:?
kbhowtomaster kbinfo kbmt KB298475 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:298475
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com