‘壹’ 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
‘贰’ sql server 2008 r2 占用多大内存
机子上除了SQLSERVER2008R2没有跑其他的东西 最大内存设置的是2147483647MB 最小内存0MB 没有勾选Use AWE to allocate memory 现在使用了23.8G
‘叁’ SQL Server 2008 R2 持续占用内存直到服务器死机,怎么解决
sql的性能优化需要调试了,你sql的读写频繁的话还要增加8g内存
‘肆’ SQL Server 2008 R2 持续占用内存直到服务器死机,怎么解决
和sql server 的机制有关,sql server能访问服务器多少内存就会占用多少,并不会自动释放,可以限制数据库服务器的内存使用量,具体方法:右键点击数据库实例,点开属性对话框,在内存标签内设置 ”最大服务器内存大小“ 为你想限制的大小,重启数据库服务就可以了。不过还是建议你先检查下数据库性能,做下优化!
‘伍’ 新装SQL server 2008 快速占满大量内存 问题蹊跷 高分求助
内存能占用到多少?一般新安装什么都没操作的话,是不会占用什么内存的
建议用profiler监控一下是否有什么内部进程或程序在访问
-------------------
这个嘛,R2有sp2补丁,可以打一下看看,有些内部问题确实是由于系统自身的原因的
-------------------
服务器这里的配置确实不太了解,学习了呵呵
‘陆’ sqlserver2008占内存高,一般是什么原因
sqlserver2008会把整个数据库缓存到内存里面,就是说数据库有多大,就会占内存多个空间,直到把内存占满为止。
这样可以提高数据库速度的,而且一般是没有问题的,如果要限制数据库占用内存控制,要在数据库里面限制,把占用内存改成最大,在SQL server management studio 里面右击服务器,点击属性,选择内存,选择最大内存。
‘柒’ windows server2012R2 64位系统中安装SQL server2008 32位最大使用内存是多少
Windows Server 2008 x86Windows Server 2008 标准版,支持最大 4GB 内存
Windows Server 2008 企业版,支持最大64GB 内存
Windows Server 2008 数据中心版,支持最大 64GB 内存
Windows Server 2008 x64 with 或 withoutHyper-V Role Enable
Windows Server 2008 标准版,支持最大 32GB 内存
Windows Server 2008 企业版,支持最大1TB 内存
Windows Server 2008 数据中心版,支持最大 1TB 内存
Windows Server2008 R2最大内存限制:
Windows Server 2008 R2 with Hyper-V RoleEnable
Windows Server 2008 R2 标准版,最大支持 32GB 内存
Windows Server 2008 R2企业版,最大支持 1TB 内存
Windows Server 2008 R2 数据中心版,最大支持 1TB 内存
Windows Server 2008 R2 without Hyper-V RoleEnable
Windows Server 2008 R2 标准版,最大支持 32GB 内存
Windows Server 2008 R2企业版,最大支持 2TB 内存
Windows Server 2008 R2 数据中心版,最大支持 2TB 内存
from: http://bbs.chinaunix.net/thread-3785204-1-1.html
32位的windows2008 企业版完全支持64G内存 需要设置下:
1、开始运行cmd
2、输入BCDEdit /set PAE forceenable后回车
3、重起
‘捌’ SQL Server 2008 R2占用内存越来越大怎么解决
这些占用着的内存,其实是数据缓存.如果内存够大,那就别删了.删除后会减低性能和效率.
如果一定要删,实质上是通过最大值开限制内存开销:
1、鼠标右键实例-->属性-->内存
2、设定最大内存 即可
3、