sqlserver服务内存占比过高

sqlserver内存占用达到90+%,查看sysprocesses根据资源占用排序有如图结果,但是不知道前几个占用大资源进程是有什么作用,以及为什么产生,所以不好随便kill,请大神解惑,谢谢!
图片说明

是不是sql语句有问题,导致事物没有提交,一直在内存中。我猜的,楼主可以排除下

参考

https://www.cnblogs.com/lyhabc/archive/2013/06/12/3133273.html

AWAITING COMMAND 代表你开了查询窗口的个数,关掉一个查询窗口就少一个了

你这个一直在等待执行应该是哪里卡住了,或者有无限循环之类。SQL Server Profiler 跟踪一下看看。

sqlserver内存过高。不代表当前时刻的内存过高。

sqlserver内存不会自动释放的。

如果要查询原因,需要把数据库重启一下。用SQL Server Profiler 查看一下执行的sql。

sqlserver内存过高,只要cpu的占用不高。就没关系。

分配的内存不足或可由 SQL Server 使用的内存不足将降低性能。数据不是驻留在数据高速缓存内,而是必须从磁盘连续读取。当需要页时,Windows NT 4.0 和 Microsoft Windows® 2000 与磁盘交换数据而导致过多的换页操作

全面排查你的sql语句,是不是有死循环或者执行慢的情况。

如果重启一下,SQLSERVER占用的内存就小,那么,你需要检查一下SQLSERVER的设置,你是否为SQLSERVER分配的内存太多。
图片说明
SQLSERVER的内存管理可能做得并不是很好,所以,一定要为操作系统保留足够的内存。