自動定時重啟sql server回收內(nèi)存
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
最近為數(shù)據(jù)庫服務(wù)器增加了內(nèi)存,達(dá)到了最大支持的8G,數(shù)據(jù)庫用的是mssql 2005 ,之前內(nèi)存一直是4G的,不存在內(nèi)存大和32位操作系統(tǒng)沖突的事情,32位操作系統(tǒng)單進(jìn)程最大支持2G的內(nèi)存,這樣子的話內(nèi)存就白加了,怎么辦呢? 網(wǎng)上搜索了很多資料,發(fā)現(xiàn)微軟提供了一個算是臨時的解決方案吧,使用AWE來分配內(nèi)存,這樣子sqlserver占用的內(nèi)存基本上可以達(dá)到系統(tǒng)總內(nèi)存。但是,經(jīng)過一段時間的運行,發(fā)現(xiàn)了一個問題,就是當(dāng)內(nèi)存占用增加到一定量(比如6G)的時候,內(nèi)存還會一直增加下去,這樣時間長了就會造成內(nèi)存用完,甚至可能造成服務(wù)器當(dāng)機(jī),我們的數(shù)據(jù)庫服務(wù)器就因為這個在晚上自己死機(jī)了,造成訪問中斷。究其原因是因為AWE不能自動回收內(nèi)存。 于是乎一個想法出來了,因為sqlserver重啟時會自動回收內(nèi)存,那么問題就變成了定時重新啟動sqlserver ,大家都知道sqlserver有自動備份等功能,但是沒有自動重啟的功能。這時候我突然想到了windows自帶的計劃任務(wù),我們可不可以利用計劃任務(wù)來定時重新啟動sqlserver呢? 現(xiàn)在脈絡(luò)基本清楚,基于平時重新啟動sqlserver 時經(jīng)常提示要關(guān)閉自動備份功能(也就是sqlserver代理),于是我新建一個記事本,然后重命名為sql.bat ,單擊右鍵編輯輸入以下內(nèi)容:
基于這樣的內(nèi)容,自動運行時不會出現(xiàn)任何提示,不信大家可以試試看更換或者刪減下上面的4個語句,運行后應(yīng)該都會有提示,需要手工操作才可以。 下面就是在控制面板里面新建一個計劃任務(wù)了,這里省掉。 該文章在 2014/9/24 9:06:30 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |