我们在日常升级或是更换服务器的时候,如果遇到开始使用好好的,用着用着,用户就很慢很卡,而且用户不间断的提示缓存池中的可用内存不足,那我们就要注意SQL内存不足了。
如下图提示:
我们也知道SQLSERVER设置可用内存是在数据库属性-内存页签查看。
但是这是计算机提供给最大内存空间,其实在SQLSERVER中,也有内存的限制。SQLSERVER的各个版本中对内存的规模支持是不同的,如下图:
我们可以通过执行SQL语句 select @@version来查看目前的数据库版本。不同的版本有不同的支持,比如Express版本,即使给他配100G,也不能发挥计算机性能。
查看版本后我们就可以通过语句查看内存池的大小。如果我们的版本只有1410M,但是使用却超过大于此规模,势必会导致数据库查询执行很慢。
select SUM(pages_kb)/1024 as SizeMB FROM sys.dm_os_memory_clerks
所以,遇到这个情况或是想要避免这种情况,请将SQLSERVER的版本更换为企业版。