Sql Server實體記憶體及虛擬記憶體設定的總結

iSQlServer發表於2009-12-10
 手頭的書籍+搜尋+經驗+打字=下面的總結,希望對大家有用。

  在實體記憶體很小且很昂貴的年代,引入了虛擬記憶體的技術。首先,它是一種技術,計算機系統中程式可以通過訪問大小和定址與系統中實體記憶體無關的記憶體。

  1.SqlServer的實體記憶體限制可限制緩衝區快取記憶體和過程快取,虛擬記憶體限制可限制連線記憶體。

  (緩衝區快取記憶體用於儲存從資料庫磁碟檔案讀入其中的資料頁或索引頁,並將修改後的頁寫回磁碟。緩衝區快取中會保留一頁,直到緩衝區管理器需要該緩衝區讀入更多資料。資料只有在被修改後才重新寫入磁碟。在將緩衝區快取記憶體中的資料寫回磁碟之前,可對其進行多次修改

  過程快取是SQL Server 記憶體緩衝池的一部分,用於儲存T-SQL批處理、儲存過程和觸發器的執行計劃。)

  2.32位系統中由於虛擬記憶體的定址空間限制為4GB,雖然有了PAE和AWE能使用超過4GB的記憶體了,但是這些記憶體只能用於緩衝區快取記憶體,不可用於連線記憶體和過程快取。

  3.當使用者數在4000到5000時(一般情況,當然這還是取決於使用者在做什麼),這時SQL Server會話會產生連線問題,這是虛擬記憶體的問題。

  4.記憶體設定的經驗值:一般的資料庫,建議將緩衝區快取記憶體大小設定為資料庫大小的20%,比如一個50G的資料庫,為SQL Server分配的記憶體是10G。當然,如果資料庫很大甚至到達TB級的話應該分配為資料庫大小的5%到10%左右。

  5.在64位SQL Server中可能大家覺得啟用'啟用awe標誌'沒有什麼用了,因為沒有4G的限制了。其實還是有用的,啟用'啟用awe標誌'可以保證為SQL Server分配的記憶體不可切換,早期SQL Server版本中引數'設定工作集大小'指示SQL Server記憶體不可切換,現在這個標誌已經取消。

  6.不能讓SQL Server使用太多的記憶體,可能導致Windows中的分頁問題,要為作業系統留1G到2G的記憶體。

  7. 緩衝區快取記憶體能解決一些I/O問題,但是不會消除所有的I/O問題!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-622141/,如需轉載,請註明出處,否則將追究法律責任。

相關文章