SQL Server 2008,64G内存重启后两天就被SQL占用79%

大漠孤沙 2011-08-11 01:34:12
windows Server 2008EE(x64)+SQL Server2008(x64),64G内存重启后两天就被SQL占用79%。。。

系统刚装起来,准备搭建业务系统的测试环境,可是过了两天去看。。。。内存利用率高得不行。

重启了几次,再过两天去看,又是这样。


求招~
...全文
437 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
--小F-- 2011-08-11
  • 打赏
  • 举报
回复
看看各位强人的解释 学习了很多
billpu 2011-08-11
  • 打赏
  • 举报
回复
这件事要一分为二来看 楼上两个某种程度来说都没说错
64位系统+64位sqlserver
64位系统+32位sqlserver(2005 2008 2008r2 略不同)
这个结论是不一样的,32位的sqlserver也可以工作在64位的系统上,wow的问题也需要考虑进去
nzperfect 2011-08-11
  • 打赏
  • 举报
回复
64-bit Sql Server 使用AWE,我们到现在已经用了三年了,不用怀疑。
而且最早的标准版不支持锁定内存页而导无法启用AWE的问题,后来也都有了解决办法。
http://www.cnblogs.com/nzperfect/archive/2010/03/29/1699316.html

nzperfect 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 nbdba 的回复:]

64位操作系统的寻址空间已经足够,所以不必使用AWE接口。
所以说,64位操作系统不必也不能配置AWE
[/Quote]

Given what you know about memory and AWE, it would seem that there is no reason for using AWE
on a 64-bit system. After all, a 64-bit system has enough address space to address as much memory as it
needs, so why would you want AWE on a 64-bit system? You can’t even enable AWE in a 64-bit version
of SQL Server; the option is disabled in the user interface.
It turns out that there are some great reasons for using AWE to access your memory, even on a 64-bit
system. The SQL Server team realized that on 64-bit systems they could improve overall performance by
using AWE in a 64-bit environment. They found that using AWE memory allows memory to be allocated
and accessed a lot faster. In addition, the memory cannot be paged out by the operating system.
Because of this, 64-bit SQL Server was changed so even though you can’t enable AWE on 64-bit versions
of SQL Server, if the SQL Server service account has the Lock Pages in Memory advanced user right, SQL
Server will automatically use AWE to access buffer pool memory.
NBDBA 2011-08-11
  • 打赏
  • 举报
回复
64位操作系统的寻址空间已经足够,所以不必使用AWE接口。
所以说,64位操作系统不必也不能配置AWE
nzperfect 2011-08-11
  • 打赏
  • 举报
回复
AWE is not needed and cannot be configured on 64-bit operating systems.

我觉得这个翻译成 “AWE是不必需的,而且AWE也无法配置”
为什么AWE无法配置?因为启动帐号拥用锁定内存页权限后,AWE会自动配置。
nzperfect 2011-08-11
  • 打赏
  • 举报
回复
这个以前我看过。
但SQL Server 2005/2008在设计时,如果配置了锁定内存页,不论你是否配置AWE,都会自动使用AWE管理内存。
通过Select sum(awe_allocated_kb)*1.0/1024/1024 as [AWE allocated, Gb] From sys.dm_os_memory_clerks
可查看awe是否开启。
NBDBA 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 perfectaction 的回复:]
引用 10 楼 nbdba 的回复:

引用 9 楼 ifeeling 的回复:
启用了AWE,设置成最大内存10G,重启中。

谢谢各位,真让人感动,虽然不少是来围观的,也为本贴聚了不少人气。

晕,
64位的不必AWE
设置10G,留54G太浪费,至少设置55G+
2008设置后不必重启不知道?


应该说64位开AWE不是必须的。
如果log里有page out,……
[/Quote]
这个有根据?

awe enabled 选项

下一版本的 Microsoft SQL Server 将删除该功能。请不要在新的开发工作中使用该功能,并尽快修改当前还在使用该功能的应用程序。

在 SQL Server 中,利用地址窗口化扩展插件 (AWE) API,可以使可访问的物理内存量超出对配置的虚拟内存设置的限制。可使用的具体内存量取决于硬件配置和操作系统的支持能力。MicrosoftWindows Server 2003 操作系统所支持的物理内存量有所增加。因此,AWE 可访问的物理内存量取决于使用的操作系统。

Windows Server 2003 Standard Edition 最多支持 4 GB 的物理内存。

Windows Server 2003 Enterprise Edition 最高支持 32 GB 的物理内存。

Windows Server 2003 Datacenter Edition 最高支持 64 GB 的物理内存。

注意
64 位操作系统上不需要 AWE,也不能在该系统上配置 AWE。


这段摘自:http://technet.microsoft.com/zh-cn/library/ms190731.aspx
nzperfect 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 nbdba 的回复:]

引用 9 楼 ifeeling 的回复:
启用了AWE,设置成最大内存10G,重启中。

谢谢各位,真让人感动,虽然不少是来围观的,也为本贴聚了不少人气。

晕,
64位的不必AWE
设置10G,留54G太浪费,至少设置55G+
2008设置后不必重启不知道?
[/Quote]

应该说64位开AWE不是必须的。
如果log里有page out,还是需要AWE的.
AWE管理内存可以提高sql server安全和性能。
topboys 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 nbdba 的回复:]
引用 9 楼 ifeeling 的回复:
启用了AWE,设置成最大内存10G,重启中。

谢谢各位,真让人感动,虽然不少是来围观的,也为本贴聚了不少人气。

晕,
64位的不必AWE
设置10G,留54G太浪费,至少设置55G+
2008设置后不必重启不知道?
[/Quote]

对滴。。。
老潘 2011-08-11
  • 打赏
  • 举报
回复
才79%,没事的,剩下的足够其它应用程序使用了
NBDBA 2011-08-11
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 ifeeling 的回复:]
启用了AWE,设置成最大内存10G,重启中。

谢谢各位,真让人感动,虽然不少是来围观的,也为本贴聚了不少人气。
[/Quote]
晕,
64位的不必AWE
设置10G,留54G太浪费,至少设置55G+
2008设置后不必重启不知道?
大漠孤沙 2011-08-11
  • 打赏
  • 举报
回复
启用了AWE,设置成最大内存10G,重启中。

谢谢各位,真让人感动,虽然不少是来围观的,也为本贴聚了不少人气。
wangkun520 2011-08-11
  • 打赏
  • 举报
回复
看看sql server的内存分配情况
NBDBA 2011-08-11
  • 打赏
  • 举报
回复
sql使用内存历来都是有多少用多少,内存多确实也提高了性能,如果你的服务器需要流些内存给其他应用,一般需要设置服务器使用最大内存,在服务器属性设置就好了。
重启什么的完全没有必要
火才松 2011-08-11
  • 打赏
  • 举报
回复
限制一下最大内存max server memory.

EXEC sys.sp_configure N'show advanced options', N'1' RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'min server memory (MB)', N'1024'
GO
EXEC sys.sp_configure N'max server memory (MB)', N'40960'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'show advanced options', N'0' RECONFIGURE WITH OVERRIDE
GO
快溜 2011-08-11
  • 打赏
  • 举报
回复
可以在SQL Server 属性(内存选项卡)中找到配置最大使用内存.
AcHerat 元老 2011-08-11
  • 打赏
  • 举报
回复
去查看下系统日志和SQL数据库的日志文件看看。
chuanzhang5687 2011-08-11
  • 打赏
  • 举报
回复
嘛sql占这么多!
chuanzhang5687 2011-08-11
  • 打赏
  • 举报
回复
64G内存?
加载更多回复(1)

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧