SQL Server 2008 R2占用內存越來越大兩種解決方法


SQL Server 2008 R2占用內存越來越大兩種解決方法 [非程序和sql語句的問題]

 

事件緣由:本人在開發sql server數據庫項目的過程中發現了這么一個問題,SQL Server 2008 R2運行越久,占用內存會越來越大。因為sql server 2008 本身內存回收機制做的不好 所以只能這么強制設置。現在明白了,原來是微軟R2系列的服務器&數據庫問題的通病。

第一種:
有了上邊的分析結果,解決方法就簡單了,定期重啟下SQL Server 2008 R2數據庫服務即可,使用任務計划定期執行下邊批處理:

net stop sqlserveragent
net stop mssqlserver
net start mssqlserver
net start sqlserveragent
 
注意最不可取的辦法:

1、做個軟件自動給sql server 2005數據庫強制釋放內存;

注:這個是可以的,但是這樣做很不合理;一方面服務器上的web系統正在運行,如果此時我們把系統的內存釋放掉了這樣肯定會引起網頁OA/ERP/CRM系統的異常。

2、給sql server 2005 做個任務來釋放內存;這個好像是可以的!但是這個也是很麻煩的事情。

很明顯上面的方法都不是最理想的。


第二種:
進入Sql server 企業管理器(管理數據庫和表的,這個都不知道就不用往下看了),在數據庫服務器名稱上點擊【右鍵】,選擇【屬性】,然后,找到【內存】選項,在右邊的【使用A WE分配內存】(sqlServer64的應該不用勾 ) 左邊把對勾打上。在最大服務器內存(MB)上填入適當的大小(具體填多大,肯定不能超過計算機的物理內存,當然,也可以在任務管理器中查一下,sqlserver.exe占有多大時,系統會變慢作為參考),記得是以M(兆)為單位,點確定,重啟一下Sql服務器!OK!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM