【MSSQL】如何清理SQL SERVER内存解决内存占用高的问题
释放SQL Server占用的内存
- 原因分析
- 强制释放SQL Server 内存脚本
服务器维护中过程中,经常碰到SQL SERVER 内存占用高的问题,让人非常头疼。
第一种方法,可以通过重启SQL SERVER服务释放内存,但是生产服务器环境一般不允许随便重启 SQL SERVER服务。
第二种方法,通过设置服务器最高内存值的方法来释放内存,具体操作是先把服务器最大内存设置成一个小值,但不能太小,太小容易使SQL SERVER挂掉,然后再把服务器最大内存值设置回合适的值,建议占服务器总内存的80%。
第三种方法,通过定时服务定时检查并自动强制释放内存。
原因分析
由于Sql Server对于系统内存的管理策略是有多少占多少,除非系统内存不够用了(大约到剩余内存为4M左右),Sql Server才会释放一点点内存。所以很多时候,我们会发现运行Sql Server的系统内存往往居高不下。
这些内存一般都是Sql Server运行时候用作缓存的,例如你运行一个select语句,那么Sql Server会将相关的数据页(Sql Server操作的数据