SQL Server错误:页面文件对于此操作而言太小

时间:2017-01-05 22:09:22

标签: sql-server sql-server-2012 windows-server-2008

我在运行Windows Server 2008 R2的虚拟服务器上运行SQL Server 2012 Express(v 11.0.3000)。在过去的几周里,SQL Server一直在崩溃或挂起。看看SQL服务器日志,似乎就在崩溃之前我收到一条错误,说“无法加载DLL dbghelp.dll或它引用的DLL之一。原因:1455(页面文件太小了,不能用于此操作...“

我对这是引用SQL Server分页文件还是Windows分页文件感到困惑。由于这是虚拟服务器,因此在Windows系统配置中禁用虚拟内存。当我去任务管理器时,它显示我有94,089 MB的可用物理内存。我发现一篇文章说明在虚拟服务器中,所有内存都是虚拟的,所以对于Windows的虚拟化实例,它看起来都像是物理内存。因此,如果服务器有这么多可用内存,我不明白为什么SQL Server的页面文件太小。

当我搜索此1455错误消息时,我发现这篇文章(http://www.sqlservercentral.com/Forums/Topic1487760-5-1.aspx)建议减少最大服务器内存。我认为这意味着减少SQL Server中的服务器属性中的最大服务器内存设置。目前,此设置为1024 MB。在这种情况下,这似乎与减少服务器内存相违背。另外,1GB似乎不是很多。

当我转到SQL Server属性的“常规”选项卡时,“内存”的值为4096(MB)。

下面是SQL Server日志的屏幕截图: enter image description here

谢谢!

1 个答案:

答案 0 :(得分:4)

DLL错误只是内存不足的结果。 SQL Server无法为进程分配更多的内存。 Maximum Server Memory是一个参数,用于定义sql server可以分配的最大内存量。 你必须提高它:1024MB对于producton数据库来说是一个非常低的值。 在此处查看更多详细信息:https://msdn.microsoft.com/en-us/library/ms178067(v=sql.110).aspx

SQL Server Express 是免费的,但有最大可用内存等限制:https://msdn.microsoft.com/en-us/library/ms143685(v=sql.105).aspx ......它是1GB。对不起,但可能你必须升级到标准版。 :(