SQL Server 2008 R2占用cpu、內(nèi)存越來越大的兩種解決方法
SQL Server 2008 R2運(yùn)行越久,占用內(nèi)存會(huì)越來越大。
第一種:
有了上邊的分析結(jié)果,解決方法就簡(jiǎn)單了,定期重啟下SQL Server 2008 R2數(shù)據(jù)庫(kù)服務(wù)即可,使用任務(wù)計(jì)劃定期執(zhí)行下邊批處理:
net stop sqlserveragent net stop mssqlserver net start mssqlserver net start sqlserveragent
第二種:
進(jìn)入Sql server 企業(yè)管理器(管理數(shù)據(jù)庫(kù)和表的,這個(gè)都不知道就不用往下看了),在數(shù)據(jù)庫(kù)服務(wù)器名稱上點(diǎn)擊【右鍵】,選擇【屬性】,然后,找到【內(nèi)存】選項(xiàng),在右邊的【使用AWE分配內(nèi)存】(sqlServer64的應(yīng)該不用勾)左邊把對(duì)勾打上。在最大服務(wù)器內(nèi)存(MB)上填入適當(dāng)?shù)拇笮。ň唧w填多大,肯定不能超過計(jì)算機(jī)的物理內(nèi)存,當(dāng)然,也可以在任務(wù)管理器中查一下,sqlserver.exe占有多大時(shí),系統(tǒng)會(huì)變慢作為參考),記得是以M(兆)為單位,點(diǎn)確定,重啟一下Sql服務(wù)器!OK!
解決SQL Server CPU占用率高
SQL Server CPU占用率高,一般是因?yàn)椴樵償?shù)據(jù)量大,執(zhí)行時(shí)間長(zhǎng)造成的。
這里提供調(diào)試方法,方便找出異常sql
1、打開SQL Server Profiler
2、新建跟蹤
a.點(diǎn)擊新建跟蹤,并設(shè)置好數(shù)據(jù)庫(kù)連接
b.設(shè)置跟蹤屬性,選擇模板“Standard”
c.切到“事件選擇”進(jìn)行跟蹤設(shè)置
1) 只保留如下兩個(gè)事件選項(xiàng)
2) 點(diǎn)擊列篩選
3) 進(jìn)行詳細(xì)篩選設(shè)置
設(shè)置CPU時(shí)間作為篩選條件,單位毫秒(用于跟蹤耗CPU占用較長(zhǎng)的查詢,可設(shè)置為大于等于20000,按CPU內(nèi)核數(shù)×1000,可以跟蹤C(jī)PU占用100%大于1秒的查詢)
3、點(diǎn)擊運(yùn)行,跟蹤語句,定位CPU占用較多的語句
如下圖所示,CPU占用2660146毫秒,CPU為24 核,則至少CPU占用100%耗時(shí)2660146/24/1000 = 110秒才可以執(zhí)行好相應(yīng)的操作
4、根據(jù)語句特征,在你的服務(wù)器程序中找到相應(yīng)的功能,作出修正
4.1) 分析查詢中需要檢索數(shù)據(jù)量較大的部分,作出簡(jiǎn)單修正(如注銷)
4.2) 更新后重新執(zhí)行此查詢,查看profiler中是否CPU占用消失
4.3) 如果已消失說明問題定位正確,可以優(yōu)化查詢,若CPU占用任然很多,則回滾修改,繼續(xù)4.1操作
補(bǔ)充資料:
SQL Server 2008 R2運(yùn)行越久,占用內(nèi)存會(huì)越來越大。
第一種:
有了上邊的分析結(jié)果,解決方法就簡(jiǎn)單了,定期重啟下SQL Server 2008 R2數(shù)據(jù)庫(kù)服務(wù)即可,使用任務(wù)計(jì)劃定期執(zhí)行下邊批處理:
net stop sqlserveragent
net stop mssqlserver
net start mssqlserver
net start sqlserveragent
第二種:
進(jìn)入Sql server 企業(yè)管理器(管理數(shù)據(jù)庫(kù)和表的,這個(gè)都不知道就不用往下看了),在數(shù)據(jù)庫(kù)服務(wù)器名稱上點(diǎn)擊【右鍵】,選擇【屬性】,然后,找到【內(nèi)存】選項(xiàng),在右邊的【使用AWE分配內(nèi)存】(sqlServer64的應(yīng)該不用勾)左邊把對(duì)勾打上。在最大服務(wù)器內(nèi)存(MB)上填入適當(dāng)?shù)拇笮。ň唧w填多大,肯定不能超過計(jì)算機(jī)的物理內(nèi)存,當(dāng)然,也可以在任務(wù)管理器中查一下,sqlserver.exe占有多大時(shí),系統(tǒng)會(huì)變慢作為參考),記得是以M(兆)為單位,點(diǎn)確定,重啟一下Sql服務(wù)器!OK!
欄 目:MsSql
下一篇:SQL Server AlwaysOn讀寫分離配置圖文教程
本文標(biāo)題:SQL Server 2008 R2占用cpu、內(nèi)存越來越大的兩種解決方法
本文地址:http://mengdiqiu.com.cn/a1/MsSql/10422.html
您可能感興趣的文章
- 01-10SQLServer存儲(chǔ)過程實(shí)現(xiàn)單條件分頁(yè)
- 01-10SQL Server 2012降級(jí)至2008R2的方法
- 01-10SQLServer中防止并發(fā)插入重復(fù)數(shù)據(jù)的方法詳解
- 01-10SQL Server數(shù)據(jù)庫(kù)定時(shí)自動(dòng)備份
- 01-10SQL Server性能調(diào)優(yōu)之緩存
- 01-10實(shí)現(xiàn)SQL Server 原生數(shù)據(jù)從XML生成JSON數(shù)據(jù)的實(shí)例代碼
- 01-10Sql Server 死鎖的監(jiān)控分析解決思路
- 01-10SqlServer 在事務(wù)中獲得自增ID的實(shí)例代碼
- 01-10SqlServer快速檢索某個(gè)字段在哪些存儲(chǔ)過程中(sql 語句)
- 01-10SQLServer性能優(yōu)化--間接實(shí)現(xiàn)函數(shù)索引或者Hash索引


閱讀排行
- 1C語言 while語句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
- 4C語言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-10SQLServer存儲(chǔ)過程實(shí)現(xiàn)單條件分頁(yè)
- 01-10SQLServer中防止并發(fā)插入重復(fù)數(shù)據(jù)的方
- 01-10SQL Server 2012降級(jí)至2008R2的方法
- 01-10SQL Server性能調(diào)優(yōu)之緩存
- 01-10SQL Server數(shù)據(jù)庫(kù)定時(shí)自動(dòng)備份
- 01-10Sql Server 死鎖的監(jiān)控分析解決思路
- 01-10實(shí)現(xiàn)SQL Server 原生數(shù)據(jù)從XML生成JSON數(shù)
- 01-10SqlServer快速檢索某個(gè)字段在哪些存儲(chǔ)
- 01-10SqlServer 在事務(wù)中獲得自增ID的實(shí)例代
- 01-10SQLServer性能優(yōu)化--間接實(shí)現(xiàn)函數(shù)索引或
隨機(jī)閱讀
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10使用C語言求解撲克牌的順子及n個(gè)骰子
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什