[翻譯]SQL Server 工作集訊息

來源:互聯網
上載者:User

Q:我發現有指向工作集(SQL Server保留記憶體地區)被分頁出來相關的訊息:
重要部分的 SQL 伺服器處理序記憶體已被分頁。這可能導致效能下降。期間: 0 秒。 工作集 (KB): 2484,已提交 (KB): 48036,記憶體使用量比率: 50%。
有什麼原因可能導致這個問題?

A:
工作集調整分為以下幾種:
1. 訊號調整
低實體記憶體事件提醒事件是由作業系統設定的(參考:QueryMemoryResourceNotification<http://msdn2.microsoft.com/en-us/library/aa366799.aspx>),當實體記憶體低下時會出現。SQL Server資源監視器,Lazy writer和其他進程佔用BPool記憶體部分。它會將實體記憶體返回給系統,然後降低SQL Server的工作集。當該事件產生時,sys.dm_os_ring_buffer和RING_BUFFER_RESOURCE_MONITOR的記錄會被寫入日誌。這是SQL Server要保留預留記憶體的正常行為。該行為不會被寫入錯誤記錄檔資訊。

2. 自調整
作業系統在新申請一個頁的時候遇到了頁錯誤,判斷為實體記憶體不足。例如,如果SQL Server為一個棧,串連伺服器或其他應用程式申請頁,發現記憶體不足,會直接調整SQL Server的工作集。

3. 硬調整
當系統記憶體嚴重不足的時候,會發生硬調整。該行為會直接把SQL Server所有的工作集和其他進程分頁出來。

除了訊號調整之外,自調整和硬調整都會寫錯誤記錄檔,導致效能問題。

基本查錯步驟:
1. 確認沒有其他進程快速吃完了記憶體。查看方法是監測記憶體:_Total工作集這個效能計數器。如果您啟用了一個快速消耗記憶體的應用程式,工作集會被快速地調整,但_Total會保持不變。如果_Total快速下降,那麼這就說明不是某個應用程式吃光了記憶體,而是發生了MiEmptyWorkingSet或MmAllocateContigiousMemory發生了,然後作業系統決定進行硬調整。

2. 確認SQL Server進程ID在發生問題的時間段一直存在。如果SQL Server服務有被重啟過計數器可能會產生容易誤導的資料。

3. 確認您的系統的驅動是最新的。驅動也可能會造成調整。

4. 確認作業系統終端服務的bug不是導致該問題的原因:http://support.microsoft.com/default.aspx?scid=kb;EN-US;905865

5. 抓取完整的效能計數器,和SQL Server的sys.dm_os_ring_buffers。

6. 應用作業系統補丁:http://support.microsoft.com/default.aspx?scid=kb;EN-US;920739

7. 應用作業系統補丁:http://support.microsoft.com/default.aspx?scid=kb;EN-US;931308

8. 應用SQL Server 2005 SP3。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.