建議的更新和 SQL Server 2012年和 SQL Server 2014年高效能的工作負載的組態選項

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:2964518
本文將說明效能增進與適用於 Microsoft SQL Server 2012年及透過各種產品更新及設定選項的 SQL Server 2014年版本的變更。若要考慮套用這些更新,以改善效能的 SQL Server 的執行個體]。您看到的改善程度視各種因素,其中包括工作負載模式、 競爭點、 處理器版面配置 (處理器群組、 通訊端、 且加入 NUMA 節點、 核心 NUMA 節點中的數字) 和出現在系統的記憶體數量而定。Microsoft SQL Server 支援小組一直使用這些更新及變更設定,來達到使用有數個 NUMA 節點和很多處理器的硬體系統的客戶工作負載的合理的效能提升。支援小組會繼續在將來更新這篇文章與其他更新。

高階的系統
高階的系統通常有多個通訊端、 八核心或多個每個通訊端,和半兆位元組或更多的記憶體。

SQL Server 2016年的附註您不再需要啟用追蹤旗標,在 SQL Server 2016年,因為關聯的邏輯,追蹤旗標的自動偵測已經併入產品。
如何套用建議的更新,並改善的 SQL Server 2012年效能,以及 SQL Server 2014
建議分為三個資料表,如下所示:
  • [表 1 會包含最常建議的更新和高階的系統上的可調適性的追蹤旗標。
  • [表 2] 包含隨附於累積的更新的其他延展性修正。
  • [表 3] 包含一些建議及指引,額外的效能微調。
注意其他的內容,檢查下列從 SQL Server 支援小組的文章:

[表格 1]。重要更新高-< 終端系統

檢閱下列的表格,並確定您的 SQL Server 的執行個體符合所需組建的資料行中的需求之後,請啟用追蹤旗標,追蹤旗標] 欄中。

重要當您啟用追蹤旗標,一直在環境中的修正程式時,請留意,您必須啟用在可用性群組一部份的所有複本上的修正程式和追蹤旗標。

#案例和要考慮的徵狀追蹤旗標必要的版本更新提供詳細的知識庫文件/部落格連結
1
  • 您會遇到高 CMEMTHREAD 等待。
  • SQL Server 安裝在每個通訊端的 8 或更多核心的系統上
T8048SQL 2014 RTM、 SQL 2012 RTMCSS 擴大服務部落格 張貼 來涵蓋這個主題。
2
  • 您正在使用依賴於記錄檔 (例如,永遠開啟) 的集區快取功能
  • SQL Server 已安裝於系統與多個通訊端。
T9024SQL 2014 RTM, SQL 2012 SP1 CU32809338修正: 高"記錄寫入等待"計數器值的 SQL Server 2012年執行個體上

注意追蹤旗標 9024 並不一定要 SQL Server 2014 SP1 (及較新的 service pack) 或 SQL Server 2012 SP3 (和更新版本的 service pack)
3
  • 您的 SQL Server 的執行個體正在處理上千個連線重設,因為連接共用。
T1236SQL 2014 RTM CU1, SQL 2012 SP1 CU92926217 修正: SQL Server 資料庫鎖定活動增加時發生效能問題

注意追蹤旗標 1236年並不一定要 SQL Server 2014 SP1 (及較新的 service pack) 或 SQL Server 2012 SP3 (和更新版本的 service pack)
4
  • 您的應用程式工作負載會涉及頻繁的 tempdb 使用量 (建立及卸除的暫存資料表或資料表變數)。
  • 您注意到使用者的要求,也可以在等待 tempdb 頁面資源的配置的競爭。
T1118SQL 2014 RTM、 SQL 2012 RTM328551 Tempdb 資料庫的並行存取增強功能

注意啟用追蹤旗標,並加入為 tempdb 資料庫的多個資料檔案。
5
  • 您有多個 tempdb 資料檔。
  • 在資料檔的第一次是設定為以相同大小的數字。
  • 重型的活動,也因為 tempdb 檔遇到成長,並非所有的檔案成長在同一時間,並造成配置競爭。
T1117SQL 2014 RTM、 SQL 2012 RTM2154845 為了避免在 SQL Server tempdb 資料庫中的配置爭用的建議
6
  • 由於 SOS_PHYS_PAGE_CACHE 和 CMEMTHREAD 的效能問題會等候期間大量記憶體的電腦上的記憶體配置。
不適用SQL 2014 RTM CU1,

SQL 2012 SP1 CU9
2926223在 NUMA 環境中發生在外部索引的網頁,在 SQL Server 2012年或 SQL Server 2014年處理時的效能問題

Table.s 使用 2。P效能修正包含累積的更新

檢閱徵狀資料行中的說明,並套用在適用的環境中的 [必要的更新] 欄位中必要的更新。您可以檢閱知識庫文件,如需有關個別的問題。請留意這些建議的一些可能會要求您啟用其他的追蹤旗標,做為啟動參數。

注意在 「 更新方法 」 的資料行上的目前名稱提供 SQL Server 可解決這個問題的第一個累積更新。累積的更新包含的所有 hotfix,隨附於先前的 SQL Server 的所有更新的都更新版本。因此,我們建議您安裝 最新的累積更新 若要解決的問題。

#狀況需要的更新程式知識庫文件
1立即寫入期間選取到暫存資料表原因效能問題。SQL 2012 SP2 CU1,

SQL 2012 SP1 CU10
2958012 當您執行的 i/o 效能不佳選取至暫存資料表作業,在 SQL Server 2012
2您會遇到 PWAIT_MD_RELATION_CACHE 或改變索引之後的 MD_LAZYCACHE_RWLOCK 等待...線上查詢作業已中止。SQL 2014 RTM CU1,

SQL 2012 SP1 CU9
2926712 變更索引就會降低效能...在 SQL Server 2012年或 SQL Server 2014年中止線上作業
3查詢突然執行不良的產品的標準版。 SQL 2014 RTM CU1

SQL 2012 SP1 CU7
2879373 執行緒未在 SQL Server 2012年或 SQL Server 2014年標準版平均排定
4劇降的曲線期望的分頁生命中因為效能變慢。SQL 2012 SP1 CU42845380您可能會遇到效能問題,在 SQL Server 2012
5在 NUMA 設定、 大量的記憶體,以及 「 最大伺服器記憶體 」 設定為較低的值的系統上的資源監視器的高 CPU 使用率。SQL 2012 SP1 CU32813214當沒有在伺服器上的沒有載入之後的伺服器上安裝 SQL Server 2012年的 CPU 特殊圖文集
6非產生排程器配置記憶體來排序執行相關聯的大型記憶體時授與系統上使用大量安裝的記憶體。SQL 2012 SP1 CU22801379修正: 錯誤 17883,當您在 SQL Server 2012年或 SQL Server 2008 R2 中有許多的 Cpu 和大量記憶體的伺服器上執行查詢
7非產生排程器時排序運算子在大量記憶體的系統上周遊許多的雜湊桶中緩衝區集區。SQL 2012 SP1 CU12762557「 處理程序<block list="">似乎是非傳送排程器上<ID>」 錯誤訊息,當您執行查詢時在 SQL Server 2012年</ID></block>
8當您執行需要長的時間,若要編譯多個 NUMA 節點與多核心的系統上的並行處理查詢時的高 CPU 使用率SQL 2012 SP2 CU1

SQL 2014 RTM CU2
2928300 激烈的查詢編譯工作負載未適當擴充也不斷提高在 NUMA 硬體,並且產生 SQL Server 中的 CPU 飽和度的核心的數字
9記憶體配置的排序運算子會花很長的時間,在大量記憶體的 NUMA 系統上完成,因為遠端節點配置。SQL 2012 SP1 CU32819662在 NUMA 環境中的 SQL Server 效能問題
10記憶體不足 」 錯誤時在 NUMA 大量 RAM 的電腦上安裝 SQL Server 和 SQL Server 中有大量外部索引的網頁。SQL 2012 RTM CU12688697 當您使用 NUMA 電腦上執行的 SQL Server 2012年執行個體的記憶體不足錯誤
11SOS_CACHESTORESOS_SELIST_SIZED_SLOCK當您建置大型表格中的空間資料型別上的索引上的單一執行緒存取鎖爭用。SQL 2014 RTM CU1

SQL 2012 SP1 CU7
2887899 在 SQL Server 2012年或 SQL Server 2014 空間資料型別在大型資料表上建立索引時的效能變慢
12當您在大型資料表中的空間資料型別上建立索引時,高的 CMEMTHREAD 等型別。SQL 2014 RTM CU1

SQL 2012 SP1 CU7
2887888 當您在 SQL Server 2012年或 SQL Server 2014年的執行個體在大型資料表空間資料型別上建立索引的 SQL Server 的效能變慢
13爭用情形 SOS_CACHESTORE 單一執行緒存取鎖或您的計劃會被收回經常在臨機操作查詢工作負載。啟用追蹤旗標-T174

SQL 2014 RTM CU6, SQL 2012 SP1 CU 14
3026083 修正: 在臨機操作的 SQL Server 計劃快取的 SOS_CACHESTORE 單一執行緒存取鎖爭用會導致高 CPU 使用率 SQL Server 2012年或 2014
14執行長的並行資料倉儲查詢編譯時間結果RESOURCE_SEMAPHORE_QUERY_COMPILE等待中。啟用追蹤旗標-T6498

SQL 2014 RTM CU 6
3024815 大型查詢編譯等待在 SQL Server 2014 RESOURCE_SEMAPHORE_QUERY_COMPILE
15現有的統計資料由於將不常更新大量的資料表中的資料列。啟用追蹤旗標-T23712754171 變更自動更新統計資料臨界值,對於具有大量的資料列的資料表
16CHECKDB 命令將需要很長的時間,對大型資料庫。啟用追蹤旗標-T2562 和 T25492634571改良的 DBCC CHECKDB 指令可能會導致較快的效能當您使用 PHYSICAL_ONLY 選項
17CHECKDB 命令將需要很長的時間,對大型資料庫。SQL 2014 RTM CU63029825 修正: DBCC CHECKDB 需要較長時間執行牽涉到 SQL CLR Udt 時
18CHECKDB 命令將需要很長的時間,對大型資料庫。啟用追蹤旗標-T2566945770 修正: DBCC CHECKDB 陳述式採用較長的時間執行


[表 3。一般性的考量和最佳作法來改善您的 SQL Server 的執行個體的效能

檢閱KB 文件/書籍線上資源的資料行中的內容,請考慮實作本指南中建議的動作] 欄。

#知識庫文件/書籍線上資源建議的動作
1TF 8032

對於臨機操作的工作負載最佳化

強制參數化
計劃快取中的項目是因為其他的快取或記憶體職員的成長收回。當快取到達的項目最大數目時,您也可能會遇到計劃快取區收回。追蹤旗標 8032,除了考慮 對於臨機操作的工作負載最佳化 (http://msdn.microsoft.com/en-us/library/cc645587.aspx) 伺服器] 選項,同時也 強制參數化 (http://technet.microsoft.com/en-us/library/ms175037.aspx) 資料庫選項。
22806535

[推薦] 和 [最大平行度] 組態選項,SQL Server 中的指導方針
使用 sp_configure 預存程序,變更 [最大平行度 」 的組態,以根據知識庫文件的 SQL Server 執行個體。
3955644 「 存取核取快取桶計數 」 和 「 存取核取的快取配額 」 的選項,用 sp_configure 中所描述的預存程序 使用 sp_configure 若要設定知識庫文件中的建議根據這些值。高階的系統的建議的值如下所示:
「 存取核取的快取桶計數 」: 256
"存取核取快取配額": 1024年
4918483 如何降低在 64 位元版本的 SQL Server 的緩衝區集區記憶體的分頁"將網頁鎖在記憶體中 」 的使用者將權利指派給 SQL 服務啟動帳戶。

最大伺服器記憶體設為大約有百分之 90 的實體記憶體總數。請確定記憶體設定為使用親和性的節點的 「 最大伺服器記憶體 」 設定帳戶遮罩設定。

注意您可以使用 sp_configure 若要檢查的記憶體設定。
52207548 使用 「 平衡 」 電源計劃時,在 Windows Server 2008 R2 的效能降低檢閱文件,並使用您的 Windows 系統管理員,實作其中一個在本文的 < 解決方案 > 一節中提及的解決方案。
6立即檔案初始化使用您的 Windows 系統管理員,授與 SQL Server 服務帳戶 「 執行磁碟區的維護工作 」 使用者權限是根據線上叢書 》 的主題.中的資訊
7315512 SQL Server 的 「 自動成長 」 和 「 自動壓縮 」 設定的考量檢查您的資料庫的目前設定值,並確定它們根據知識庫文件中的建議設定。
8改變工作負載的群組

如果您有許多都耗盡的大型記憶體授權的查詢時,減少預設工作負載中群組的較低的值從預設的 25%的資源管理者組態的 request_max_memory_grant_percent。
9擴充的事件



請考慮使用效能監視及疑難排解期間的診斷資料收集延伸的事件。它利用下列的改良功能的新的 SQL Server 版本:
  • 輕量的基礎結構
  • 資料收集、 資料儲存和處理事件檔案、 信號緩衝區、 事件配對、 事件計數器 (直方圖) 的更新模式
  • 在資料收集期間先進的功能 (例如,較新的動作,如 [呼叫堆疊,範圍更廣的事件)
  • 動態篩選的功能與進階組態 (CPU/NUMA 分割、 緩衝區大小、 事件遺失) 的資料收集延展性設定期間
  • 進階組態 (CPU/NUMA 分割、 緩衝區大小、 事件遺失) 的擴充性設定

10SQL Server 2012年授權核心限制請考慮升級至較新的 SKU 的 SQL Server 的版本。
112506384 如何手動設定在多處理器的電腦上的 [K 群組工作分派手動指派至 K 群組的 NUMA 節點。如需詳細資訊,請參閱下列:


重要注意事項
  • 如果[表 1 ] 中的所有條件都適用於您:
    • SQL Server 2014年指導: 至少套用 CU1 rtm 並加入"-T8048 – T9024 – T1236 – T1117 – T1118"至 SQL Server 啟動參數清單。
    • SQL Server 2012年指導: 套用 SP2 新增和"-T8048-T9024 – T1236 – T1117 – T1118"至 SQL Server 啟動參數清單。
  • 如需有關如何使用追蹤旗標的一般資訊,請參閱 追蹤旗標 SQL Server 線上叢書 》 中的主題。
  • 您也可以找到 NUMA 組態的處理器數目的詳細資訊,以此類推,在您 SQL Server 錯誤記錄檔.
  • 若要尋找 SQL Server 的版本,檢查下列項目:
参考
協力廠商解決方案免責聲明

本文件中的資訊和解決方案代表 Microsoft Corporation 在本文件發行當時對這些問題的看法。這個方案是透過 Microsoft 或協力廠商提供者。我們不會特別建議此文章可能描述的任何協力廠商提供者或協力廠商的解決方案。可能也有其他的協力廠商提供者或本文未說明的協力廠商解決方案。因為我們必須回應變化的市場情況,這項資訊應該不會轉譯為 Microsoft 的承諾。我們無法保證或背書或任何由 Microsoft 或任何所提之協力廠商提供者所呈現的任何的解決方案資訊的正確性。

Microsoft 不擔保並排除任何明示、默示或法定之說明、擔保及條件。這些包括但不是限於表示、 擔保及條件的標題、 未侵權、 令人滿意的條件、 適售性、 及適合某特定用途,對於任何服務、 解決方案、 產品或任何其他資料或資訊。在沒有事件 Microsoft 會負責使用本文所提及任何協力廠商的解決方案。

警告:本文為自動翻譯

內容

文章識別碼:2964518 - 最後檢閱時間:03/08/2016 00:53:00 - 修訂: 8.0

Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Business Intelligence, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2012 Service Pack 1

  • kbsurveynew kbinfo kbexpertiseadvanced kbmt KB2964518 KbMtzh
意見反應