服務器優化案列分析之SQL server內存優化

狀況分析


環境如下:

硬件:IBM3610服務器

系統:windows2003  x32

應用:內部物流系統軟件   C/S架構

數據庫:SQL Server2000


問題:

  1. 因爲物流系統架構問題(開發比較早05年開發架構)服務端和客戶端都只能運行在32位環境下

  2. 這樣導致系統內存用不上去,一直在3.25G左右

  3. SQL的運行內存一旦上去退步下來

  4. 用戶連接量大的時候很卡,併發上不去


最後蒐羅了很多方法,進行32位環境下的內存優化,具體如下:


1.Windows 2003 企業版 打開PAE更好的利用4G以上內存


修改boot.ini文件,如下:


[boot loader]

timeout=0

default=multi(0)disk(0)rdisk(0)partition(1)\WINNT

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Advanced Server"

/fastdetect /PAE



2.啓用鎖定內存頁選項(windows)

啓用鎖定內存頁選項

在"開始"菜單上單擊"運行"子菜單,然後在"打開"框中鍵入"gpedit.msc"。

在"組策略"控制檯上,展開"計算機配置",然後展開"Windows 設置"。

展開"安全設置",然後展開"本地策略"。

選擇"用戶權限分配"複選框。

詳細資料窗格中隨即顯示出策略。

在詳細資料窗格中,雙擊"鎖定內存頁"。

在"本地安全策略設置"對話框中,單擊"添加"按鈕。

在"選擇用戶或組"對話框中,添加有權運行 sqlservr.exe 的帳戶。


3.啓用SQL的AWE

code 如下,設定SQL 使用6G的內存

sp_configure 'show advanced options', 1

RECONFIGURE

GO

sp_configure 'awe enabled', 1

RECONFIGURE

GO

sp_configure 'max server memory', 6144

RECONFIGURE

GO


4.必須重新啓動 SQL Server 2000 實例才能使更改生效。

net stop mssqlserver

net start mssqlserver

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章