共用方式為


MSSQLSERVER_701

詳細資料

產品名稱

SQL Server

產品版本

10.0

產品組建編號

10.00.0000.00

事件識別碼

701

事件來源

MSSQLSERVER

元件

SQLEngine

符號名稱

NOSYSMEM

訊息文字

資源集區 '%ls' 中的系統記憶體不足,無法執行此查詢。

說明

SQL Server 無法配置足夠的記憶體來執行查詢。這可能是由各種原因造成,包括作業系統的設定、實體記憶體的可用量,或是目前工作負載的記憶體限制。大多數的情況下,這個錯誤的原因並不是因為交易失敗。

診斷查詢 (例如 DBCC 陳述式) 可能會因為伺服器記憶體不足而失敗。

使用者動作

下列清單概述有助於疑難排解記憶體錯誤的一般步驟:

  1. 確認是否有其他應用程式或服務正在耗用此伺服器的記憶體。重新設定比較不重要的應用程式或服務,以降低其記憶體耗用量。

  2. 開始收集 SQL Server**: Buffer Manager** 和 SQL Server: Memory Manager 的效能監視器計數器。

  3. 檢查下列 SQL Server 記憶體組態參數:

    • max server memory

    • min server memory

    • awe enabled

    • min memory per query

    注意不尋常的設定,並且視需要加以更正。說明 SQL Server 2008 的增加記憶體需求。預設設定列於《SQL Server 線上叢書》中的<設定伺服器組態選項>。

  4. 如果使用 Address Windowing Extensions (AWE),請確認已啟用 Windows 安全性設定 [鎖定記憶體分頁]

  5. 當您看到這些錯誤訊息時,請觀察 DBCC MEMORYSTATUS 輸出以及它變更的方式。

  6. 檢查工作負載 (例如,並行工作階段的數目以及目前正在執行的查詢數)。

下列動作可以為 SQL Server 提供更多可用的記憶體:

  • 如果有 SQL Server 以外的應用程式正在耗用資源,請嘗試停止執行這些應用程式或考慮在不同的伺服器上執行這些應用程式。這將會移除外部的記憶體壓力。

  • 如果已經設定 max server memory,請增加其設定值。

執行下列 DBCC 命令,以便釋放數個 SQL Server 記憶體快取。

  • DBCC FREESYSTEMCACHE

  • DBCC FREESESSIONCACHE

  • DBCC FREEPROCCACHE

如果仍繼續發生該問題,您必須進一步研究,而且可能必須降低工作負載。