Sql server 升级到64位后出现奇怪的SQL Server内存错误

Sql server 升级到64位后出现奇怪的SQL Server内存错误,sql-server,memory,Sql Server,Memory,我们刚刚将生产数据库服务器从32位“升级”到64位。它在Windows Server 2003上运行SQL Server 2005标准。升级后的晚上,服务器几乎一个小时不可用——客户端请求超时。问题似乎自行解决了。关于这个问题,我唯一的线索是SQL server日志中的内容: LazyWriter:警告,未找到可用缓冲区 内存管理器 保留虚拟机=8470288 KB VM提交=2167672 KB AWE已分配=0 KB 保留内存=1024KB 正在使用的保留内存=0 KB 信息 内存节点Id=

我们刚刚将生产数据库服务器从32位“升级”到64位。它在Windows Server 2003上运行SQL Server 2005标准。升级后的晚上,服务器几乎一个小时不可用——客户端请求超时。问题似乎自行解决了。关于这个问题,我唯一的线索是SQL server日志中的内容:

LazyWriter:警告,未找到可用缓冲区

内存管理器 保留虚拟机=8470288 KB VM提交=2167672 KB AWE已分配=0 KB 保留内存=1024KB 正在使用的保留内存=0 KB

信息 内存节点Id=0 保留虚拟机=8464528 KB VM提交=21620000 KB AWE已分配=0 KB 单页分配器=103960KB 多页分配器=31832KB

MemoryCrek_SQLGENERAL(总计) 保留虚拟机=0 KB VM提交=0 KB AWE已分配=0 KB SM保留=0 KB SM提交=0 KB 单页分配器=4352 KB

然后还有更多类似的消息以MemoryCrek开头


有人知道发生了什么事吗?看起来它的内存已经用完了,当然,服务器只有2GB的物理RAM,这在今天的标准下不是很高,但它肯定不应该完全停止工作?我应该将SQL允许使用的最大内存设置为1.6GB左右吗?除了安装更多的RAM,我还能做些什么吗?

2GB肯定不是很多。事实上,我相信微软建议你有2GB的内存来运行操作系统和其他任务

和更多信息

内存很便宜,如果可以,请添加更多内存



(来源:)

有一些零星报告称,MSSQL分配了足够的内存,导致磁盘出现页面错误,这当然会导致性能大幅下降

虽然我还没有从微软看到任何官方消息,但有报道称,将最大内存设置为比物理RAM少512M到1G应该会有所帮助

EnterpriseEdition允许您防止MSSQL页面被调出,这也应该可以解决这个问题。而且,显然,更多的RAM会有所帮助,但可能不会缓解这种情况

关于MSSQL是否试图分配过多的RAM,操作系统是否正在分页,或者MSSQL只是分配到错误的池,存在一些争论。无论如何,max mem应该帮助案例1和案例2,而SP2应该解决案例3

编辑:一位同事向我指出了一个与列出的几个修补程序相关的问题。它引用了不同的错误消息(您正在运行SP2吗?),但症状和行为似乎适合您的情况