- 1. Microsoft SQL Server 2000(已包含有SP4升級(jí)補(bǔ)丁程...
- 2. MySQL(for Windows 32Bit)官方最新下載 V5.5.13
- 3. MySQL(for Windows 64Bit)最新官方下載 V5.5.13
- 4. Apache HTTP Server(最流行的網(wǎng)頁(yè)服務(wù)器軟件之一) ...
- 5. phpMyAdmin(通過互聯(lián)網(wǎng)控制操作MYSQL的軟件) V3.4....
- 6. Access與MYSQL互轉(zhuǎn) Access2MSSQL PRO v3.0.0 英文綠...
- 7. Http File Server(http文件服務(wù)器)最新下載 V2.30 ...
- 8. phpMyAdmin 3.4.0 RC2 多語(yǔ)綠色版_很方便的網(wǎng)絡(luò)遠(yuǎn)M...
- 9. SqlDbAid 1.5.7.0 綠色版 MSSQL腳本創(chuàng)建與編輯工具
- 10. Microsoft SQL Server 2000 Personal Edition 中文...
手工調(diào)整Sql Server2005數(shù)據(jù)庫(kù)內(nèi)存 提高內(nèi)存利用率
作者: 來(lái)源: 發(fā)布時(shí)間:2011-5-16 18:02:37 點(diǎn)擊:
我有一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器,32位,操作系統(tǒng)是Windows2003企業(yè)版,4G內(nèi)存,320G存儲(chǔ)空間,使用SQLSERVER2005 數(shù)據(jù)庫(kù)管理系統(tǒng),里邊有若干個(gè)數(shù)據(jù)庫(kù),平時(shí)主要處理大量的業(yè)務(wù)外,還設(shè)置了一些同步,由于及時(shí)優(yōu)化,CPU 一直保持在5%以下,各項(xiàng)主要指標(biāo)觀察下來(lái)一直正常,如數(shù)據(jù)庫(kù)的緩沖命中率保持在95%以上等,所以平時(shí)就以默認(rèn)安裝的模式運(yùn)行著,本以為SQLSERVER2005能合理的分配內(nèi)存,至少比SQLSERVER2000有了很大的改進(jìn),且操作系統(tǒng)也由Windows 2000Server更新為Windows 2003,內(nèi)存不足時(shí)無(wú)論是系統(tǒng)還是數(shù)據(jù)庫(kù)本身都會(huì)自動(dòng)調(diào)整內(nèi)存(Sqlserver2000需要手工調(diào)整,可Google一下),最近觀察不管是什么時(shí)候內(nèi)存使用都不超過2G,且SQLSERVER2005占用1.7G的現(xiàn)象,開始以為是數(shù)據(jù)數(shù)內(nèi)存足夠了,也沒有在意,后來(lái)越想越覺得有問題,當(dāng)操作大表時(shí),數(shù)據(jù)庫(kù)占用的內(nèi)存都有任何改變,于是Google一下才發(fā)現(xiàn)也需要手工調(diào)整,當(dāng)然是原因一大堆,想想解釋得也合理。于是也及時(shí)進(jìn)行了調(diào)整,效果還不錯(cuò)。
這里把調(diào)整的步驟講給大家,希望有同樣問題的朋友參考參考:
1.打開操作系統(tǒng)啟動(dòng)時(shí)PAE 配置項(xiàng);
步驟:找到系統(tǒng)安裝的引導(dǎo)位置的目錄下找到boot.ini文件,默認(rèn)是隱藏只讀的,找到 Windows2003 啟動(dòng)配置,在后面加上空格 /PAE ,保存;重啟
示例所示:
multi(0)disk(0)rdisk(0)partition(2)\%systemroot%= "Windows Server 2003 Datacenter Edition " /PAE
2.打開組策略,添加數(shù)據(jù)庫(kù)運(yùn)行所依賴的帳號(hào)有權(quán)進(jìn)行鎖定內(nèi)存;大部分情況下,數(shù)據(jù)庫(kù)運(yùn)行的帳號(hào)都是系統(tǒng)級(jí)的帳號(hào),如administrator 或者是 administrators組的帳號(hào),當(dāng)然也有處于安全考慮的給了一個(gè)運(yùn)行權(quán)限很小的帳號(hào),只能運(yùn)行數(shù)據(jù)庫(kù);所以必須授權(quán)該帳號(hào)具有鎖定內(nèi)存的權(quán)限;
步驟:開始->運(yùn)行->gpedit.msc->組策略->計(jì)算機(jī)設(shè)置->windows配置->安全設(shè)置->本地策略->用戶權(quán)限分配->鎖定內(nèi)存頁(yè)->本地安全策略設(shè)置->添加->選擇運(yùn)行的帳號(hào)或者組;
3.重啟服務(wù)器,遠(yuǎn)程維護(hù)的要查看boot.ini是否正確,切起切起,否則后果可想而知;
4.配置數(shù)據(jù)庫(kù),重啟后操作系統(tǒng)已支持大內(nèi)存了,但數(shù)據(jù)庫(kù)還是需要配置的;默認(rèn)都未配置;執(zhí)行以下命令即可
步驟:打開查詢分析器,進(jìn)行以下操作,這里以3G內(nèi)存給數(shù)據(jù)庫(kù)使用為例進(jìn)行操作,這幾條命令分別含義是:打開高級(jí)選項(xiàng),打開鎖定內(nèi)存,設(shè)置最大內(nèi)存,最好是一起完成;
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
sp_configure 'max server memory', 3072
RECONFIGURE
GO
5.重啟數(shù)據(jù)庫(kù),當(dāng)配置項(xiàng)手工配置好后,需要重啟數(shù)據(jù)庫(kù),這時(shí)你就發(fā)現(xiàn)SQLSERVER2005數(shù)據(jù)庫(kù)占用多大的內(nèi)存了,再看看數(shù)據(jù)庫(kù)的屬性也改變了,AWE上打了勾,最大內(nèi)存改為3G了,以前是很大的,忽悠我^-^
注意點(diǎn):
1.當(dāng)操作系統(tǒng)PAE未打開時(shí),配置數(shù)據(jù)庫(kù)是沒有用的,數(shù)據(jù)庫(kù)會(huì)提示出錯(cuò),告訴你內(nèi)存鎖定系統(tǒng)當(dāng)前不支持;
2.Boot.ini 文件是隱藏的,只讀的,先修改屬性后再操作;
3.?dāng)?shù)據(jù)庫(kù)重啟前最好先備份,防患于未然;
4.不知是操作系統(tǒng)問題,還是盜版的問題,我的SQLSERVER2005在進(jìn)程任務(wù)管理器只有180M,經(jīng)過和朋友確認(rèn),才知是顯示錯(cuò)誤,其實(shí)也不知是錯(cuò)誤還是就是這樣的,我想有一種可能,那就是系統(tǒng)把3G劃給數(shù)據(jù)庫(kù)使用后,自己只有1G,他只知道自己分配的那一塊給數(shù)據(jù)庫(kù)系統(tǒng)180M吧;
5.?dāng)?shù)據(jù)庫(kù)的內(nèi)存設(shè)置有一個(gè)合理限度,根據(jù)服務(wù)器業(yè)務(wù)多少確定,但不能超過物理內(nèi)存,我覺得至少得留500M給系統(tǒng)吧,另外如果系統(tǒng)中還有其他的服務(wù)在使用也要考慮進(jìn)去,否則系統(tǒng)內(nèi)存不足,引起磁盤頁(yè)面交換頻繁,反而使性能有所下降。
這里把調(diào)整的步驟講給大家,希望有同樣問題的朋友參考參考:
1.打開操作系統(tǒng)啟動(dòng)時(shí)PAE 配置項(xiàng);
步驟:找到系統(tǒng)安裝的引導(dǎo)位置的目錄下找到boot.ini文件,默認(rèn)是隱藏只讀的,找到 Windows2003 啟動(dòng)配置,在后面加上空格 /PAE ,保存;重啟
示例所示:
multi(0)disk(0)rdisk(0)partition(2)\%systemroot%= "Windows Server 2003 Datacenter Edition " /PAE
2.打開組策略,添加數(shù)據(jù)庫(kù)運(yùn)行所依賴的帳號(hào)有權(quán)進(jìn)行鎖定內(nèi)存;大部分情況下,數(shù)據(jù)庫(kù)運(yùn)行的帳號(hào)都是系統(tǒng)級(jí)的帳號(hào),如administrator 或者是 administrators組的帳號(hào),當(dāng)然也有處于安全考慮的給了一個(gè)運(yùn)行權(quán)限很小的帳號(hào),只能運(yùn)行數(shù)據(jù)庫(kù);所以必須授權(quán)該帳號(hào)具有鎖定內(nèi)存的權(quán)限;
步驟:開始->運(yùn)行->gpedit.msc->組策略->計(jì)算機(jī)設(shè)置->windows配置->安全設(shè)置->本地策略->用戶權(quán)限分配->鎖定內(nèi)存頁(yè)->本地安全策略設(shè)置->添加->選擇運(yùn)行的帳號(hào)或者組;
3.重啟服務(wù)器,遠(yuǎn)程維護(hù)的要查看boot.ini是否正確,切起切起,否則后果可想而知;
4.配置數(shù)據(jù)庫(kù),重啟后操作系統(tǒng)已支持大內(nèi)存了,但數(shù)據(jù)庫(kù)還是需要配置的;默認(rèn)都未配置;執(zhí)行以下命令即可
步驟:打開查詢分析器,進(jìn)行以下操作,這里以3G內(nèi)存給數(shù)據(jù)庫(kù)使用為例進(jìn)行操作,這幾條命令分別含義是:打開高級(jí)選項(xiàng),打開鎖定內(nèi)存,設(shè)置最大內(nèi)存,最好是一起完成;
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
sp_configure 'max server memory', 3072
RECONFIGURE
GO
5.重啟數(shù)據(jù)庫(kù),當(dāng)配置項(xiàng)手工配置好后,需要重啟數(shù)據(jù)庫(kù),這時(shí)你就發(fā)現(xiàn)SQLSERVER2005數(shù)據(jù)庫(kù)占用多大的內(nèi)存了,再看看數(shù)據(jù)庫(kù)的屬性也改變了,AWE上打了勾,最大內(nèi)存改為3G了,以前是很大的,忽悠我^-^
注意點(diǎn):
1.當(dāng)操作系統(tǒng)PAE未打開時(shí),配置數(shù)據(jù)庫(kù)是沒有用的,數(shù)據(jù)庫(kù)會(huì)提示出錯(cuò),告訴你內(nèi)存鎖定系統(tǒng)當(dāng)前不支持;
2.Boot.ini 文件是隱藏的,只讀的,先修改屬性后再操作;
3.?dāng)?shù)據(jù)庫(kù)重啟前最好先備份,防患于未然;
4.不知是操作系統(tǒng)問題,還是盜版的問題,我的SQLSERVER2005在進(jìn)程任務(wù)管理器只有180M,經(jīng)過和朋友確認(rèn),才知是顯示錯(cuò)誤,其實(shí)也不知是錯(cuò)誤還是就是這樣的,我想有一種可能,那就是系統(tǒng)把3G劃給數(shù)據(jù)庫(kù)使用后,自己只有1G,他只知道自己分配的那一塊給數(shù)據(jù)庫(kù)系統(tǒng)180M吧;
5.?dāng)?shù)據(jù)庫(kù)的內(nèi)存設(shè)置有一個(gè)合理限度,根據(jù)服務(wù)器業(yè)務(wù)多少確定,但不能超過物理內(nèi)存,我覺得至少得留500M給系統(tǒng)吧,另外如果系統(tǒng)中還有其他的服務(wù)在使用也要考慮進(jìn)去,否則系統(tǒng)內(nèi)存不足,引起磁盤頁(yè)面交換頻繁,反而使性能有所下降。
[收藏此文章]
- 1. 教你配置xampp在php中使用sqlite3
- 2. 關(guān)于Server Application Unavailable錯(cuò)誤的處理經(jīng)驗(yàn)...
- 3. 比較全的SQL注入相關(guān)的命令分享
- 4. Server Application Error的分析與處理
- 5. 關(guān)于ASP和SQLServer時(shí)間的解決方案
- 6. 簡(jiǎn)單教會(huì)你在ASP中使用SQL語(yǔ)句
- 7. ASP程序?qū)崿F(xiàn)下載SQL數(shù)據(jù)庫(kù)
- 8. 關(guān)于ASP中四種server的方法介紹
- 9. ServerVariables集合的四種常見使用方法
- 10. 防SQL注入的要點(diǎn)