以前的伺服器,由於記憶體的價格過高,一般配的記憶體不是很多,超過4G的當然就不多了.現在的伺服器,配置超過4G就很多,在配作SQL
資料庫伺服器後,很多的人只選預設的設定,雖然可以正常使用,可是卻把大量的記憶體給浪費(SQL服務使用的記憶體不會超過1.8G),系統的效能也不能因為的大記憶體而提升,這是很可惜的.
在本文中,我大致講一下配置的過程.(如果伺服器的記憶體少於4G,不用配置)(網上完全講這個的,沒有見過,隨手寫一個)
1.開啟系統中的大記憶體支援(windows)
若要啟用 Windows 2000 Advanced Server 或 Windows 2000 Datacenter Server 支援
大於4GB的實體記憶體,必須將參數 /pae 添加到 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
改為
[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
若要啟用 AWE,請將 awe enabled 設定為 1。除非指定了 max server memory 的值,否
則 SQL Server 將保留幾乎所有可用記憶體,只留下 128 MB 或更少。
如果已成功啟用該選項,則當 SQL Server 2000 執行個體啟動時,SQL Server 錯誤記錄檔中將
出現"已啟用地址視窗擴充"這條訊息。
awe enabled 是進階選項。如果正在使用 sp_configure 系統預存程序更改該設定,則只有
當 show advanced options 設定為 1 時才能更改 awe enabled。
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
必須重新啟動 SQL Server 2000 執行個體才能使更改生效。
net stop mssqlserver
net start mssqlserver
這樣,SQL 服務啟動後,就會把6G的記憶體給鎖定,完全供SQL使用
參照SQL協助檔案