如何釋放Sqlserver所佔得記憶體

2021-04-27 10:58:03 字數 502 閱讀 6539

sql server 在查詢大資料量的資料時,總會占用大量的記憶體,並且居高不下,一不小心就會宕機。

下面這個是我從網上找到的:

當你查詢資料的資料量比較大時,sqlserver會把查詢結果快取在記憶體中,保證你下次查詢同樣的記錄時會很快得到結果,所以記憶體使用量會激增。

在你完成此次查詢後,sqlserver不會馬上釋放記憶體,資料會仍然放在記憶體中,這是sqlserver的優化策略,sqlserver會不斷地占用你的系統記憶體,來加快sqlserver的執行速度,當你的系統中的其它服務也需要記憶體時,它才會自動釋放部分記憶體。一句話,sqlserver不會讓你的系統有閒置的記憶體,除非你設定sqlserver的最大記憶體使用量。這樣也沒什麼不好,如果你的系統很大,單獨給sqlserver一台機器,這樣會提高它的效能。  

如果你只是開發用,要想讓sqlserver釋放記憶體,重啟sqlserver的服務就行了。如果不想讓sqlserver占用太多記憶體,設定sqlserver的最大記憶體佔用量.

設定最大記憶體後效果好了不少!

SQL Server裡面如何檢查沒有釋放的游標

一直以來對sql server的游標都不怎麼感冒,也很少使用sql server裡面的游標,前幾天有一位問如何檢查資料庫裡面沒有釋放的游標,覺得有點意思,就測試驗證了一下,順便整理於此。會話1 我們模擬乙個應用程式或指令碼,在開啟游標後,忘記關閉 釋放游標。forselect from dbo.te...

SQL Server裡面如何檢查沒有釋放的游標

原文 sql server裡面如何檢查沒有釋放的游標 一直以來對sql server的游標都不怎麼感冒,也很少使用sql server裡面的游標,前幾天有一位問如何檢查資料庫裡面沒有釋放的游標,覺得有點意思,就測試驗證了一下,順便整理於此。會話1 我們模擬乙個應用程式或指令碼,在開啟游標後,忘記關閉...

sql server 釋放日誌空間

如果在本地進行測試,對於幾十上百gb的資料,對自己的硬碟空間確實是個考驗,再加上資料操作,比如說修改字段屬性,日誌檔案會很大,一旦匯入成功就無需前面的操作日誌了,很有必要釋放下空間。找了些資料,覺得非常實用,如下 1 sql server 2000 在查詢分析器中執行如下命令 backup log ...