[整理] 32Bit Windows & SQL Server 大容量記憶體使用設定
標準的 32 位地址最多可映像 4 GB 記憶體。因此,32 位程式的標準地址空間限制為 4 GB。預設情況下,在 32 位 Microsoft Windows 作業系統中,將為作業系統保留 2 GB 空間,另外 2 GB 空間可由應用程式使用。
在32bit作業系統中,一般SQL Server可以使用的記憶體不到2G,就算開啟了3GB開關,也使用不到3G。現在,記憶體容量超過4GB的伺服器越來越多,如果要SQL SERVER2000可以使用大容量的記憶體,我們需要做以下設定。
備註: 如何開啟作業系統3G開關
修改boot.ini檔案(要在C盤下看到boot.ini需要在勾掉“隱藏受保護的作業系統檔案”),在啟動windows項中新增 /3G 引數。修改過後的boot.ini檔案應該類似以下內容:
[boot loader]
timeout=8
default=multi(0)disk(0)rdisk(0)partition(1)
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)="Microsoft Windows 2000 Advanced Server" /3G /fastdetect
多了一個 /3G 引數。這個引數的作用,就是讓windows啟動時,將自己的核心及支援程式裝載到記憶體地址 0xC0000000 到 0xFFFFFFFF 之間,給應用程式留出3G的空間來。
設定SQL Server使用大容量記憶體步驟:
1. 安裝SQL Server2000,升級至SP4 (8.00.2039),並打上AWE補丁SQL2000-KB899761-v8.00.2040
2. 在 C:\boot.ini 檔中設定 /PAE 引數,然後重開機,讓OS抓到記憶體
備註: PAE(實體地址擴充套件)
例子:multi(0)disk(0)rdisk(0)partition(1)="Microsoft Windows 2000 Advanced Server" /fastdetect /PAE
3. 在SQL Query Analyzer中輸入下列指令,來啟動SQL Server的AWE功能(這裡設定記憶體為6G):
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
sp_configure 'max server memory', 6000
RECONFIGURE
GO
sp_configure 'allow updates', 1
RECONFIGURE WITH OVERRIDE
GO
4. 在控制皮膚--管理工具--本地安全策略(或域安全策略中)--安全設定--本機策略—使用者許可權分配右邊視窗中選取“記憶體中鎖定頁面”,在其設定畫面新增使用者或組,加入MSSQLSERVER服務的啟動賬號(比如administrator)。
5. 在命令提示符號下輸入 secedit /refreshpolicy machine_policy /enforce 或是 gpupdate (gpupdate 針對windows xp, 2003)
secedit /refreshpolicy machine_policy /enforce (針對windows2000)
Windows 2000 接受此請求後,會向使用者顯示以下文字:
來自域的組策略傳播已為這臺計算機觸發。要完成傳播並使新策略生效,需要幾分鐘的時間。請檢查應用程式日誌。
Windows 2003 下執行 gpupdate 後的結果。
C:\>gpupdate
正在重新整理策略...
使用者策略重新整理完成。
計算機策略重新整理完成。
要檢查在策略處理中的錯誤,請查閱事件日誌。
6. 重新啟動SQL Server服務使設定生效
7. 在SQL Query Analyzer中輸入下列指令,來關閉SQL Server的allow updates功能:
sp_configure 'allow updates', 0
RECONFIGURE WITH OVERRIDE
GO
8. 開啟工作管理員看看記憶體是否跟設定值一樣
術語解釋:
PAE(Physical Address Extension):PAE 是 IA32 處理器新增的功能,可以定址 4 GB 以上的實體記憶體。Microsoft Windows 2000 Advanced Server、Microsoft Windows 2000 Datacenter Server、Microsoft Windows Server 2003,企業版和 Microsoft Windows Server 2003,Datacenter Edition 可以使用 PAE 定址超過 4 GB 的實體記憶體。如果要啟用 PAE,請使用 Boot.ini 檔案中的 /PAE 引數。
AWE(Address Windowing Extensions):AWE 是一個 API 集,它使程式能夠保留大記憶體塊。保留的記憶體是非分頁的,並且只可以由該程式來使用。
SQL Server 啟用AWE 官方文件
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-557947/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Sql Server實體記憶體及虛擬記憶體設定的總結SQLServer記憶體
- 設定32位的windows2003使用大記憶體 大於1.7Windows記憶體
- SQL SERVER 記憶體爆滿SQLServer記憶體
- SQL Server 因設定最大記憶體過小導致無法啟動SQLServer記憶體
- 改善SQL Server記憶體管理(轉)SQLServer記憶體
- SQL Server 在AlwaysOn上使用記憶體表"踩坑"SQLServer記憶體
- Windows 32bit OS上實體記憶體限制以及ORACLE 10G 在32bit OS的SGA記憶體分配限制解決方法Windows記憶體Oracle 10g
- 如何配置 SQL Server 使用 2 GB 以上的實體記憶體SQLServer記憶體
- 合理配置SQL Server的最大記憶體SQLServer記憶體
- 為SQL Server啟用AWE記憶體SQLServer記憶體
- JVM堆記憶體設定JVM記憶體
- Tomcat記憶體設定Tomcat記憶體
- SQL Server資料庫對大容量表的操作SQLServer資料庫
- 設定32位的windows 2003 中oracle SGA記憶體使用大於1.7的方法--PAEWindowsOracle記憶體
- SQL Server為什麼這麼耗記憶體SQLServer記憶體
- 淺談SQL Server 對於記憶體的管理SQLServer記憶體
- SQL Server 記憶體資料庫原理解析SQLServer記憶體資料庫
- SQL Server 2000記憶體管理內幕SQLServer記憶體
- SQL Server表駐留記憶體和檢測SQLServer記憶體
- 記憶體_大頁記憶體記憶體
- SQL Server 記憶體洩露(memory leak)——遊標導致的記憶體問題SQLServer記憶體洩露
- 設定SQLserver執行記憶體SQLServer記憶體
- JVM 堆記憶體設定原理JVM記憶體
- 九大方面最佳化Windows記憶體使用效率(轉)Windows記憶體
- jvm記憶體設定及記憶體溢位、解決方案JVM記憶體溢位
- SQL Server容量規劃中使用的計數器SQLServer
- windows 7系統虛擬記憶體設定的最優方法Windows記憶體
- Tomcat記憶體設定從windows服務啟動不生效??Tomcat記憶體Windows
- SQL Server 2008記憶體效能監控SQLServer記憶體
- 關於SQL Server的記憶體佔用問題SQLServer記憶體
- 解決 SQL Server 耗盡記憶體的情況SQLServer記憶體
- 《Windows核心程式設計》---又是記憶體Windows程式設計記憶體
- hugepages_setting(linux大記憶體設定指令碼)Linux記憶體指令碼
- 32bit的linux系統記憶體分佈Linux記憶體
- eclipse設定JVM記憶體堆EclipseJVM記憶體
- Oracle:記憶體設定注意事項Oracle記憶體
- eclipse中設定JVM記憶體EclipseJVM記憶體
- ActiveMQ記憶體設定和流控MQ記憶體