Microsoft 將 Microsoft SQL Server 2012 發佈成一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2012 更新版本中包含的所有修復程式及所有安全性更新。
徵狀
請試想下列案例:
-
您將 Microsoft SQL Server 2012 安裝在有許多 Cpu 的伺服器上。 例如,伺服器上的 CPU 有64或128核心,且包含 NUMA 設定。
-
伺服器的記憶體量很大。 例如,伺服器具有 256 gb 或 1 tb 的記憶體。
-
您在 Microsoft SQL Server 2012 中執行查詢。 查詢執行方案包含套用至許多資料列的排序運算子。
在這種情況下,會在 SQL Server 錯誤記錄檔中記錄類似下列的錯誤訊息:
程式<封鎖清單>似乎不會在排程<ID上顯示。>
原因
之所以會發生這個問題,是因為排序運算子會在記憶體分配的內部 SQL Server 清單中遍歷許多 bucket,以尋找緩衝區池中的下一個可用記憶體。當伺服器的記憶體較大時,緩衝區池中記憶體分配的內部 SQL Server 清單也會增加到較大的大小。 因此,排序運算子會遍歷記憶體分配內部 SQL Server 清單中的大量 bucket,以找出緩衝區池中的下一個可用記憶體。 此行為不會經常產生排程器。 因此,會經常報告「未產生的排程」錯誤。
解決方案
累積更新資訊
SQL Server 2012 的累積更新套件 1 Service Pack 1
此問題的修正程式是在累積更新1中第一次發行。如需有關如何取得適用于 SQL Server 2012 Service Pack 1 的累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2765331 SQL Server 2012 的累積更新套件 1 Service Pack 1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2772858 在發行 SQL Server 2012 Service Pack 1 之後發行的 SQL Server 2012 組建
SQL Server 2012
此問題的修正程式是以累積更新4第一次發行。如需如何取得此 SQL Server 2012 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2758687 SQL Server 2012 的累積更新套件4注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。