SQLSERVER数据库内存占用高的解决方法

640?wx_fmt=jpeg

远程登录服务器时发现程序执行时特别卡,利用任务管理器查看了下系统资源使用情况,监视一段时间后发现CPU占用不大,但是内存占用量居高不下,然后发现是Sqlserver.exe这个服务占用内存很大,达到了近2G服务器配置的8G内存,重启Sqlserver服务后内存只有50M左右,但是几天过后又达到了近2G的内存占用,网上查找了下关于这方面的优化策略。

 

1.使用SQL语句设置SQLserver内存分配:

--a.配置最小内存

--将最小内存设置为0MB

exec sp_configure N'min server memory (MB) ',16

--b.配置最大内存

--将最大内存设置为256MB

exec sp_configure N'max server memory (MB)',266

 

执行结果:

配置选项 'min server memory (MB)' 已从 14 更改为 16。请运行 RECONFIGURE 语句进行安装。
配置选项 'max server memory (MB)' 已从 444 更改为 266。请运行 RECONFIGURE 语句进行安装。

最后执行下面语句进行安装

reconfigure with override

执行结果:

命令已成功完成。

系统服务日志:

配置选项 'min server memory (MB)' 已从 14 更改为 16。请运行 RECONFIGURE 语句进行安装。

配置选项 'max server memory (MB)' 已从 444 更改为 266。请运行 RECONFIGURE 语句进行安装。

2.手动操作设置

右击本地服务器-->服务器属性-->内存 设置完,单击确定即可。

 一般专门的数据库服务器内参最大不要超过系统的80%。避免内存被数据库占满造成服务器挂掉。

一般设置完后,需要将该SQL服务重启下。


posted @ 2018-12-25 08:02  天使不哭  阅读(329)  评论(0编辑  收藏  举报