事件缘由:本人在开发sql server数据库项目的过程中发现了这么一个问题,SQL Server 2008 R2运行越久,占用内存会越来越大。因为sql server 2008 本身内存回收机制做的不好 所以只能这么强制设置。现在明白了,原来是微软R2系列的服务器&数据库问题的通病。

第一种:
有了上边的分析结果,解决方法就简单了,定期重启下SQL Server 2008 R2数据库服务即可,使用任务计划定期执行下边批处理:

net stop sqlserveragent

net stop mssqlserver

net start mssqlserver

net start sqlserveragent
 
注意最不可取的办法:

 

1、做个软件自动给sql server 2005数据库强制释放内存;

注:这个是可以的,但是这样做很不合理;一方面服务器上的web系统正在运行,如果此时我们把系统的内存释放掉了这样肯定会引起网页OA/ERP/CRM系统的异常。

2、给sql server 2005 做个任务来释放内存;这个好像是可以的!但是这个也是很麻烦的事情。

很明显上面的方法都不是最理想的。

第二种:

进入Sql server 企业管理器(管理数据库和表的,这个都不知道就不用往下看了),在数据库服务器名称上点击【右键】,选择【属性】,然后,找到【内存】选项,在右边的【使用A WE分配内存】(sqlServer64的应该不用勾 ) 左边把对勾打上。在最大服务器内存(MB)上填入适当的大小(具体填多大,肯定不能超过计算机的物理内存,当然,也可以在任务管理器中查一下,sqlserver.exe占有多大时,系统会变慢作为参考),记得是以M(兆)为单位,点确定,重启一下Sql服务器!OK!

原文地址:http://www.cnblogs.com/zoujinhua/p/16812430.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性