Ⅰ 為什麼sql Server運行中會隔1、2個小時就把我的內存全「吃」了呢
這是SQL Server 緩沖池的預期行為。默認情況下,在啟動 SQL Server之後,SQL Server會根據操作系統報告的物理內存數來動態增大或縮小高速緩沖存儲器的容量。只要可用物理內存大小保持在4MB到10MB之間,SQL Server 緩沖池就會繼續增大(保留可用物理內存在4MB到10MB之間是為了避免操作系統因為缺少內存而頻繁地換頁)。如果物理可用內存變得較少的時候,則SQL Server會將一些內存釋放給操作系統。需要採取措施限制SQL Server 的內存使用量。可以通過設置SQL Server 資料庫引擎使用的內存的上下限來達到此目的。其具體步驟是:
1.打開企業管理器,展開伺服器組。
2.單擊該伺服器,點擊滑鼠右鍵,單擊屬性菜單。
3.在彈出的對話框中單擊內存選項卡。
內存設置方法有兩種:
1.設置min server memory和max server memory 在一個范圍段內。比如,我們將它設置成最小0MB,最大255MB。這種方法在為一台伺服器中運行多個應用程序分配內存時非常有用。
2.設置 min server memory 和 max server memory 為同一數值。比如,可以將它最大和最小值都設置成255MB。這樣的設置方法與窗口中的另一個選項「使用固定的內存大小」 相一致。
雖然內存最小值和最大值設置是高級選項,但在設置完畢之後,最好還是先將SQL Server服務停止後再重新運行,以便SQL Server能更好地對內存進行合理安排。
Ⅱ sql資料庫佔用內存太大如何處理
sql server沒有辦法釋放內存,內存都是系統自動管理的
除非你殺調哪些佔用內存大的進程
sql 語句沒寫好,死鎖...都會導致佔用內存很大
select * from master..sysprocesses
kill spid --spid 就是上面查到的spid欄位
Ⅲ 如何清除SQL SERVER緩存和釋放內存
1.打開Sql
Server
Management(企業管理器);2.打開Sql
Server實例的屬性面板;3.找到內存設置,改變其中的最大伺服器內存使用即可
。
Ⅳ 在sql server 2000中進行內存的自動釋放怎麼實現拜託各位了 3Q
無論用JAVA還是VB還是什麼其他語言,都是由程序代碼實現的釋放,不是在SQL
SERVER里可以進行設置進行智能釋放的.比如C#中,就是你關閉了連接或者Dispose()之後都會釋放內存,或者使用gc()自動回收.
Ⅳ 如何自動清理SQL資料庫在內存中的緩存
加大內存吧!360沒有這個自動清理內存的功能吧!
Ⅵ sql自動釋放內存解決方案
這種做法是不可取的,很少有人把查詢結果緩存在內存中的。看似下次查詢同樣的記錄時會很快得到結果,但實際上跟你想像的速度慢多了。提高查詢速度的途徑應該放在如何優化sql語句上。
Ⅶ 如何釋放sql server佔用的資源內存
sql server 在查詢大數據量的數據時,總會佔用大量的內存,並且居高不下,一不小心就會死機。
下面這個是我從網上找到的:
當你查詢數據的數據量比較大時,sqlserver會把查詢結果緩存在內存中,保證你下次查詢同樣的記錄時會很快得到結果,所以內存使用量會激增。
在你完成此次查詢後,sqlserver不會馬上釋放內存,數據會仍然放在內存中,這是sqlserver的優化策略,sqlserver會不斷地佔用你的系統內存,來加快sqlserver的運行速度,當你的系統中的其它服務也需要內存時,它才會自動釋放部分內存。一句話,sqlserver不會讓你的系統有閑置的內存,除非你設置sqlserver的最大內存使用量。這樣也沒什麼不好,如果你的系統很大,單獨給sqlserver一台機器,這樣會提高它的性能。
如果你只是開發用,要想讓sqlserver釋放內存,重啟sqlserver的服務就行了。如果不想讓sqlserver佔用太多內存,設置sqlserver的最大內存佔用量.
Ⅷ 急救!!如何解決SQL2000不能自動釋放內存
沒有自動釋放的,用第三方軟體,優化大師,
也可以在SQL內存管理裡面設置,,最大值和最小值,,一樣的就行了,
它不會超過設置的大小,,
最好是系統內存的三分之二!
我的就是煩了我好久,後來才設置了就沒有問題!
Ⅸ SQL SERVER 能自動釋放內存嗎
應該是SQL為了迅速響應數據請求而將一些數據放在了內存中緩沖。
如果你要減少內存佔用的話,可以用管理器 停止然後啟動 SQL服務
Ⅹ sql server 在佔用伺服器內存居高不下怎麼辦
1、做個軟體自動給sql server 2005資料庫強制釋放內存;
註:這個是可以的,但是這樣做很不合理;一方面伺服器上的web系統正在運行,如果此時我們把系統的內存釋放掉了這樣肯定會引起網頁OA系統的異常。
2、給sql server 2005 做個任務來釋放內存;這個好像是可以的!但是這個也是很麻煩的事情。
很明顯上面的方法都不是最理想的。
下面就是正確處理由於sql server 2005引起的資料庫內存居高不下的辦法:
首先我們需要登錄 sql server 2005的資源管理器
滑鼠右擊我們sql server 2005的伺服器,然後選擇「屬性」選項
找到指定資料庫伺服器的屬性中的「內存」屬性,並點擊
接下來就是配置資料庫內存了,可以參考我本地的配置如下圖:
最後點擊「確定」按鈕就可以了!
註:這篇文章是我通過自己琢磨而得,如果對大家有幫助的話,大家可以借鑒一下!同時,也給自己做個備忘!