Microsoft 發佈 Microsoft SQL Server 2012 修正成一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2012 修正版本中包含的所有修復程式及所有安全性修正程式。
徵狀
請考慮下列情況。 您在使用非統一記憶體存取(NUMA)的電腦上執行 Microsoft SQL Server 2012 的實例,且 SQL Server 會使用許多外來頁面。 在這種情況下,您可能會遇到記憶體不足的錯誤。 例如,下列701錯誤可能會記錄在 SQL Server 錯誤記錄檔中:
<日期><時間><spid ID> 錯誤:701,嚴重性:17,狀態:123。 <日期><時間><spid ID>系統記憶體不足,無法執行此查詢。
如果使用 [ 最大伺服器記憶體] 選項來設定 SQL server 使用量較大的 RAM 部分,通常會發生這個問題。 在這種情況下,SQL Server 很可能更容易遇到 imbalanced NUMA 分配。
原因
之所以發生這個問題,是因為用來計算記憶體節點可用記憶體頁面的函數無法正常運作。
解決方案
累積更新資訊
SQL Server 2012
此問題的修正程式是在 SQL Server 2012 的累積更新1中第一次發行。如需如何取得此 SQL Server 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2679368 SQL Server 2012 的累積更新1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:
2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建
其他相關資訊
若要檢查外國記憶體量,請使用下列其中一種方法:
-
查詢 sys.dm_os_memory_nodes 動態管理檢視(DMV)。 如需 sys.dm_os_memory_nodes DMV 的詳細資訊,請造訪下列 MSDN 網站:
-
在發生701錯誤時,請執行下列語句,或檢查 SQL Server 錯誤記錄中的記憶體狀態輸出:
DBCC memorystatus
-
檢查 SQL Server 2012 中 [記憶體] 節點物件中的 [外部節點記憶體(KB)] 計數器。 如需有關 Memory 節點物件的詳細資訊,請造訪下列 MSDN 網站:
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。
參考
如需有關 SQL Server 的增量服務模型的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
935897 您可以從 SQL Server 團隊取得增量服務模型,以提供已報告問題的修補程式如需 SQL Server 更新命名架構的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
822499 Microsoft SQL Server 軟體更新套件的命名架構如需軟體更新術語的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
824684 描述 Microsoft 軟體更新所使用的標準術語說明