香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > MSSQL >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

解决SQL Server虚拟内存不足情况


时间:2020-10-31 14:16 作者:admin


解决SQLServer虚拟内存不足情况
症状
  在具有2GB或更多RAM的计算机上,除了256MB(SQLServer7.0)或384MB(SQLServer2000)虚拟地址空间之外,SQLServer在启动过程中保留剩下的所有虚拟地址空间以供缓冲池使用。另外,为了存储数据和过程缓存,SQLServer使用缓冲池内存为来自SQLServer进程的大多数小于8KB的其他内存请求提供服务。剩下的未保留内存准备用于不能从缓冲池得到服务的其他分配。这些分配包括、但不限于以下各项:•SQLServer创建的所有线程的堆栈和关联的线程环境块。在SQLServer创建了所有255个工作线程之后,这大约为140MB。

  •由在SQLServer地址空间(根据具体系统而有所不同)中运行的其他DLL或进程进行的分配,如:•任何链接的服务器中的OLEDB提供程序。

  •通过使用sp_OA系统存储过程或扩展存储过程加载的COM对象。

  •加载到地址空间中的任何映像(.exe或.dll),这些映像通常使用20到25MB,但是如果您使用链接的服务器、sp_OA或扩展存储过程,则这些映像可能使用更多的空间。

  •进程堆和SQLServer可能创建的任何其他堆。在启动过程中,此空间通常为10MB,但是如果您使用链接的服务器、sp_OA或扩展存储过程,则此空间可能更多。

  •来自SQLServer进程的大于8KB的分配,例如较大查询计划、网络数据包大小配置选项接近于8KB时发送和接收缓冲区等情况所需要的分配。要查看此数字,请查找在DBCCMEMORYSTATUS中报告的OSReserved值,该值是作为8KB页的数目报告的。通常,该值为5MB。

  •跟踪缓冲池中每个缓冲区状态信息的数组。该值通常约为20MB,除非SQLServer运行时启用了地址窗口化扩展插件(AWE),在这种情况下,该值将会显著提高。

  在拥有大量数据库的系统上,日志格式化所需的64KB分配可能会占用所有剩余的虚拟内存。这之后的分配将失败,导致本文的“症状”一节中列出的一个或多个错误。

  通过使用-g启动参数,您可以指示SQLServer保留附加的虚拟内存可用,以便这些与日志相关的分配和其他正常分配加在一起也不会用完虚拟地址空间。

  下表根据数据库的数目和服务器版本列出-g值的一些建议初始值:DatabasesSQLServer7.0SQLServer2000

  250-g134N/A

  500-g185N/A

  750-g237N/A

  1000-g288-g288

  1250-g340-g340

  1500-g392-g392

  此表是使用列出的典型值进行计算的,并且此计算是基于没有使用链接的服务器活动、sp_OA或扩展存储过程这一假设的。它还假设您没有使用AWE和SQL事件探查器。出现以上任意一种情况都需要您增加-g的值。

  如果服务器上数据库的数目超过此数目,Microsoft建议您在运行该服务器之前进行慎重的考虑,因为系统上具有如此数目的数据库所需的系统开销将占用缓冲池中的大量虚拟内存,从而可能导致系统整体性能下降。

:打造SQLServer2000的安全策略
(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)