當前位置:首頁 » 編程語言 » sql2008awe分配內存
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql2008awe分配內存

發布時間: 2023-01-17 14:32:56

sql server 2008 使用過程中遇到虛擬池可用內存不足請問這種問題怎麼解決

啟用AWE分配內存沒?
啟用一下試試,具體在伺服器上按右鍵,屬性,內存里

Ⅱ sql server2008r2 內存分配

因為SQLserver版本是32位的,你看下win2008是不是64位?

1、安裝64位的操作系統,安裝64位MSSQL。這方法比較符合硬體,但是要重裝軟體。


或者

2、打開"SQL Server Management Studio"點服務屬性,開啟「AWE」,設立最大內存30*1024(保留2G給操作系統用),選中「配置值」。然後重啟服務


註:看下操作系統識別出來多內存,如果小於4G,則要為操作系統開啟「/PAE」


http://blog.csdn.net/yjg428/article/details/7030353


http://wenku..com/link?url=IPyL4oW-S1BT--3C826P7QtMDnbQlBuQInTO

Ⅲ sql server2008佔用進程內存太大,超過正常使用內存,什麼 原因

SQL Server的內存一直上不去。從Task Schele中看到SQL Server只使用了88MB內存,實際這台機器有12GB的內存,可用內存有超過8GB。 當時我以為是開啟了AWE導致的,所以連接到他的伺服器看了一下。但是資料庫為2005企業版64位,所以不用開啟AWE。而且即使開啟了,也會被忽略。 使用下面的腳本查詢了一下SQL Server內存使用: select physical_memory_in_use_kb,locked_page_allocations_kb,*fromsys.dm_os_process_memory 看到實際使用的內存有2GB,遠遠超出任務管理器看到的。(也可以通過Perfmon的Total server memory(MB)查看)。 當時覺得很奇怪,查看了SQL Server錯誤日誌發現了類似下面的信息: 2009-06-0412:21:08.16 Server Large Page Extensions enabled. 2009-06-04 12:21:08.16 Server Large Page Granularity: 2097152 2009-06-04 12:21:08.21 Server Large Page Allocated: 32MB 猜測這台期間開啟了Lock Pages In memory功能,之後得到確認。因為開啟Lock Pages In memory之後,SQL Server會使用AWE APIs鎖定內存頁,所以這部分的內存使用不會顯示在Working Set中。 So in summary the AWE APIs for 32bit and 64bit SQL Server systems are used for different purposes. In 32bit it is really to extend memory access beyond 4Gb or to enable the AWE feature. For 64bit systems, it is to possibly gain performance and to “lock pages” for the buffer pool. 到現在這個問題就比較明朗了,其實SQL Server還是正常工作的。一般查詢SQL Server的使用還是建議使用DMV或者Perfmon,直接查看Working Set信息可能不準。 另外說一下,當時看到上面Large Page的信息,以為是資料庫開啟了LargePage,但是使用DBCC TRACSTATUS查看沒有開啟834 Trace Flag,所以大數據功能是沒有啟用的。只有開啟834 Trace Flag資料庫才會真正啟用Large Page。 啟用Large page在資料庫錯誤日誌會看到類似信息: 2009-06-0414:20:40.03 Server Using large pages for buffer pool. 關於Lock Pages In memory/working set機制我找到了兩篇文章,大家有興趣可以參考: Funwith Locked Pages, AWE, Task Manager, and the Working Set WhySQL Server is using so LESS memory

Ⅳ 在32位操作系統上,如何為SQL Server分配大於2GB的內存

/3GB默認情況下,32位的操作系統只能直接分配4GB的內存,其中2GB內存空間是系統預留了供自己使用的。所以,最多隻剩下2GB 的VAS(虛擬地址空間)給所有的應用程序,比如SQL Server。你可以啟用系統啟動文件Boot.ini上的/3GB標記增加內存,使應用程序可利用的內存達到3GB。需要注意的是,VAS僅僅是所有可供使用的地址集,不是物理內存。
PAE (物理地址擴展)
PAE是IA32處理器新增的功能,用於分配大於4GB的物理內存。可以通過開啟系統啟動文件boot.ini上的/PAE開關啟用PAE。
AWE (址窗口化擴展控制項)
AWE可以在32位操作系統上擴展應用程序的執行能力。它允許應用程序訪問超出已配置的最大虛擬內存地址空間的可用物理內存。SQL Server 2005的優勢是它支持AWE內存映射這種動態分配方式。如果SQL Server只需要很少的資源,它會通過AWE將多餘部分內存返還給操作系統供其他的進程或應用程序使用。另外,AWE被支持的動態映射物理內存只能小於已配置的最大虛擬內存地址空間。而在64位系統上有啟用AWE配置選項,但是它的配置是被忽略不計的。
注意
1. 啟用PAE是目的是讓AWE內存訪問量大於4GB。如果/PAW的開關沒有開啟,當內存超過4GB的時候,AWE無法再預置內存。
2. 當/3GB開關與/PAE開關同時啟用,操作系統不能使用超過16GB的內存。這是由於考慮到內核虛擬內存空間。如果系統重啟的時候在boot.ini文件中開啟/3GB開關,而系統又有大於16GB的物理內存,額外的內存並沒有被操作系統使用。不開啟/3GB開關重啟系統將使用所有的物理內存。
詳細信息你可以參考下面的文章配置SQL Server 使用大於2GB的物理內存。參考:

Ⅳ sql server 2008 r2 啟用awe後 內存的管理

會自動釋放的。內存緩存一些查詢,tempdb,存儲等。不是把所有數據放到內存裡面。你才10G,那100G,1T的怎麼辦。這涉及SQL內存管理方面。我也是粗淺的了解了一點。

Ⅵ 如何啟用SQLSERVER2005伺服器屬性中的「使用AWE分配內存」

SQL Server 支持地址窗口化擴展插件 (AWE),從而允許在 32 位版本的 Microsoft Windows 操作系統上使用超過 4 GB 的物理內存,最多可支持 64 GB 的物理內存。默認情況下,禁用 Windows 策略「鎖定內存頁」選項。對於 32 位操作系統,在將 AWE 配置為用於 SQL Server 之前,必須授予「鎖定內存頁」許可權,必須啟用此許可權才能配置地址窗口化擴展插件 (AWE)。此策略將確定哪些帳戶可以使用進程將數據保留在物理內存中,從而阻止系統將數據分頁到磁碟的虛擬內存中。在 32 位操作系統中,如果在不使用 AWE 的情況下設置此許可權會顯著降低系統性能。

如何啟用「鎖定內存中的頁」選項:

1.在「開始」菜單上,單擊「運行」。在「打開」框中,鍵入 gpedit.msc。
將打開「組策略」對話框。
2.在「組策略」控制台上,展開「計算機配置」,再展開「Windows 設置」。
3.展開「安全設置」,再展開「本地策略」。
4.選擇「用戶權利指派」文件夾。
細節窗格中隨即顯示出策略。
5.在該窗格中,雙擊「鎖定內存中的頁」。
6.在「本地安全策略設置」對話框中,單擊「添加」按鈕。
7.在「選擇用戶或組」對話框中,添加有權運行 sqlservr.exe 的帳戶。

若要使 32 位操作系統支持 4 GB 以上的物理內存,則必須向 boot.ini 文件添加 /pae 參數並重新啟動計算機。
使用如下語句啟用AWE並配置實例所使用的緩沖池內存量:
sp_configure 'show advanced options', 1RECONFIGUREGOsp_configure 'awe enabled', 1RECONFIGUREGO sp_configure 'min server memory', 2048RECONFIGUREGOsp_configure 'max server memory', 4096RECONFIGUREGO 或在「伺服器內存選項」下,選擇「使用 AWE 分配內存」,並分配最小/最大伺服器內存。

由於 操作系統上運行的 SQL Server 2005 不支持動態分配 AWE 映射內存,因此,強烈建議為每個實例都設置 max server memory 選項,且所有實例的 max server memory 值的總和應小於計算機的總物理內存。

使用 SQL Server 性能監視器 Total Server Memory (KB) 計數器可以確定在 AWE 模式下運行的 SQL Server 實例所分配的內存量,也可以從 sysperfinfo 中選擇內存使用量來確定實例所分配的內存量。

Ⅶ sql2008資料庫內存一直增加

有沒有設置SQL Server最大使用的內存量?如果不設置,SQL Server通常有多少用多少。
依次運行如下命令,將最大內存設置為20G,當然可以根據你實際上的內存來做調整
另外這里限制的內存只是SQL Server緩沖池的大小,SQL Server其它功能也是要佔用內存的。還有64bit的是不需要開啟AWE的。
EXEC sp_configure 'show advanced options',1
RECONFIGURE

EXEC sp_configure 'max server memory (MB)',20480
RECONFIGURE

Ⅷ sql server awe怎麼設置

由於32位Windows用戶進程有4GB的虛擬地址空間。其中2GB給核心態,剩下2GB給用戶態。這兩部分嚴格分開。Windows不會因為其中某一塊

內存地址空間用盡而將另外一塊的空間讓出。

由於SQLSERVER的絕大部分指令都運行在用戶態下,就是說SQLSERVER的內存基本上使用用戶態地址空間資源。現在的情況是2GB地址空間資源

對於SQLSERVER來說嚴重阻礙了SQLSERVER有效利用硬體資源

所以SQLSERVER引入了AWE address windowsing extensions(地址空間擴展)。這是允許32位應用程序分配64GB物理內存,並把視圖或窗口

映射到2GB虛擬地址空間的機制。

使用AWE,使得一個應用程序能夠訪問最多達64GB的物理內存!!!

在SQL2000的企業版,SQL2005/2008的企業版和標准版都支持這個技術,也能夠享受這個技術帶來的好處

開啟這個功能的語句,執行完之後,重啟SQLSERVER服務即可

1 EXEC sys.sp_configure @configname = 'AWE Enabled', -- varchar(35)
2 @configvalue = 1 -- int
3 RECONFIGURE
4 GO

AWE具體實現圖

有幾點需要注意的:

(1)開啟這個功能需要SQLSERVER啟動帳戶在Windows上的lock pages in memory許可權。沒有這個許可權,AWE就不能成功被開啟。

啟動的SQLSERVER這時候只能使用2GB的地址空間。

所以DBA要確認一下SQLSERVER的errorlog里有沒有相關的信息
成功開啟:server Address Windowing Extensions enabled
消息
Address Windowing Extensions is enabled. This is an informational message only; no user action is required.
開啟失敗:Cannot use Address Windowing Extensions because lock memory privilege was not granted

(2)這個功能是在應用層面有意識地使用,而不是在Windows層面實施的。也就是說SQLSERVER在申請內存時,通過特殊API調用申請到的,

如果SQLSERVER不調用這個功能,就還會在普通的2GB虛擬地址空間申請內存。在SQLSERVER中不是所有的內存申請都會調用AWE技術,

只有先reserve,再commit的內存調用,SQLSERVER才使用AWE讓他們使用到擴展的內存。其他方式申請的內存只能使用普通的2GB地址空間。

正因為這樣,AWE不能稱為解決SQLSERVER地址空間不足的最終解決方案。使用64位的伺服器,虛擬地址空間可以達到8TB,

大於現在絕大多數的單個伺服器的物理內存數。在64位下運行的SQLSERVER,其性能往往比在32位上有比較明顯的提高。

最後附上各個版本Windows上支持的最大內存數
配置 應用虛擬地址空間大小 最大物理內存數 是否支持AWE/locked pages support
32位SQLSERVER 2GB 64GB YES
32位SQLSERVER + /3GB boot.ini參數 3GB 16GB YES
32位SQLSERVER 應用在x64位操作系統(WOW) 4GB 64GB YES
32位SQLSERVER 應用在IA64操作系統(WOW) 2GB 2GB NO
64位SQLSERVER 應用在x64操作系統 8TB 2TB YES
64位SQLSERVER 應用在IA64操作系統 7TB 2TB YES

Ⅸ 如何設置SQLServer資料庫內存

1、打開SQL Sever 2008 R2資料庫

Ⅹ SQL Server佔用內存過高,什麼原因導致的,用什麼方法可以解決

SQL Server運行越久,佔用內存會越來越大。因為sql server本身內存回收機製做的不好,這是微軟系列的伺服器&資料庫問題的通病。

解決SQL Server佔用內存過高的方法:

1.定期重啟SQL Server 2008 R2資料庫服務即可。

拓展資料

SQL Server 是Microsoft 公司推出的關系型資料庫管理系統。具有使用方便可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2012 的大型多處理器的伺服器等多種平台使用。

Microsoft SQL Server 是一個全面的資料庫平台,使用集成的商業智能 (BI)工具提供了企業級的數據管理。Microsoft SQL Server 資料庫引擎為關系型數據和結構化數據提供了更安全可靠的存儲功能,使您可以構建和管理用於業務的高可用和高性能的數據應用程序。

網路Microsoft SQL Server