sql数据库占用内存太大如何处理

来源:百度知道 编辑:UC知道 时间:2024/06/19 23:40:26

sql server没有办法释放内存,内存都是系统自动管理的
除非你杀调哪些占用内存大的进程
sql 语句没写好,死锁...都会导致占用内存很大
select * from master..sysprocesses

kill spid --spid 就是上面查到的spid字段

我原先也为这个事情烦恼过,后来了解了sqlserver后就觉得这个根本不是问题,sqlserver大内存是为了提高查询速度而设计的,也就是同样一个sql语句,第一次查询的时候会增加内存开销,而第二次就直接从内存读了,所以第二次读的时候会比从硬盘读快很多. 如果你觉得内存太大,并且超过了物理内存,那你完全可以设定sqlserver的内存最大值,不要让其超过系统内存就可以了,这样你的服务器开个几个月不重启问题都不大. 我的服务器内存是2G,我指定sqlserver最大内存是1G,所以我的服务器内存永远在1.6G,上下幅度非常小,基本上几个月不重启一点问题都没有. 当然程序很重要,如果程序的内存不释放,那也有可能内存爆满.

没法处理
SQL Server系列对于内存的释放问题一直为人所诟病
建议把数据分时间段处理

不是很清楚,不过应该是和你安装的时候选的安装类型有关吧,有什么开发的,还有什么专业数据库什么的,不同和选择,占用电脑性能不一样。