Sql-Server
為什麼 SQL Server 2012 記憶體使用限制為 4 GB
我有一個 SQL Server 安裝,由於記憶體不足,性能非常差(查詢執行速度非常慢,RESOURCE_SEMAPHORE …)。儘管機器有 16 GB 的物理記憶體並且僅使用了 44%,但記憶體使用量從未超過 ~4.1 GB。
資源監視器顯示 sqlservr.exe 的工作集為 4,289,000 KB。
我想知道這個限制來自哪裡,儘管我們將“最大伺服器記憶體”增加到 10 GB。
Os 和 DB Server 都是 64 位的,並且使用的版本具有比 4 GB 高得多的限制。
我已經使用 sysinternals TestLimit 來查看程序是否存在一般記憶體限制,但是測試程序可能會使用更多記憶體,因此它似乎與 SQL Server 本身有關。
任何幫助表示讚賞!
作業系統:Windows Server 2012 R2 標準 64 位
SQL Server:SQL Server Standard 64 位,版本 11.0.5058.0
伺服器在 VMWare ESXi 5.1.0 上虛擬化
簡短更新:我可以自己解決問題。問題實際上與記憶體無關。我們有很多 CPU 成本很大的查詢的高流量,這會造成持續的高 CPU 負載,這就是 RESOURCE_SEMAPHORE 的原因。
在顯著減少查詢數量並將查詢本身調整為更便宜之後,負載減少並且不再有 RESOURCE_SEMAPHORE。
記憶體使用仍然只有 4 GB,但顯然系統不需要使用更多!