当前位置:首页 » 编程语言 » 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