SQL2008内存占用过大,有没有什么办法?

trooper 2012-10-26 09:59:21
Windows Server 2008 R2 + SQL Server 2008 64位简体中文企业版 系统查了一下,就SQL占用了6G多的内存,有没有什么办法来管理或优化?系统是12G的内存。
...全文
505 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
發糞塗牆 2012-10-27
  • 打赏
  • 举报
回复
1、控制好最大内存。最好留2G,下限也是1G给操作系统,
2、使用性能计数器,做一个比较长时间的监控,微软有一些指标,你可以看看是否存在内存压力。如果没有压力,那站的多也没啥奇怪的。所有DBMS都会缓存很多东西到内存里面。你清了,对性能影响很大。
starseeker7 2012-10-27
  • 打赏
  • 举报
回复
缓存多事好事,更少的物理IO和重复使用很能提高数据库性能。
一般留给操作系统2G,若同步多,再留给同步2G,其他全部给数据库就可以了
你也可以手动设置数据库上限,点中你的服务器,右键属性,Mermory那里按你的需求设置
KevinLiu 2012-10-27
  • 打赏
  • 举报
回复
限制内存的话只需要设置MAX SERVER MEMORY就可以了,但是如果SQL Server需要这么多内存而限制内存以后可能会出现性能问题。
开启时代 2012-10-26
  • 打赏
  • 举报
回复
6G 还多啊?应该占更大才好。 如果限制了内存 性能就降低了。给系统增加内存吧
汤姆克鲁斯 2012-10-26
  • 打赏
  • 举报
回复
sql server 会自动进行内存管理,通常会根据自己的需求尽量占用物理内存用于缓冲(以提高缓冲区命中率),直到为操作系统保留 4-10MB 的物理内存空间(之所以选择此范围是因为经过微软的测试表明,此时操作系统会有最小的换页需求)。
但是,如果由于其他程序的内存需求增加而导致可用物理内存低于 SQL SERVER 设置的目标(4-10MB),SQL SERVER 将会释放一些内存空间。

如果不存在性能问题,就不需要干涉。如果服务器上有其他应用服务(如 IIS),则可以根据需要设置 SQL Server 最大可用内存,为应用服务保留足够的内存空间。

如果有性能问题,特别是存在内存瓶颈,则需要对会话和 sql server 内部的进程进行跟踪/分析,找出最耗内存的,进行具体处理。

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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