首页
网页制作
网络编程
脚本专栏
数据库
网站运营
网络安全
平面设计
CMS教程
搜索
建站极客
数据库
MsSql
正文
解决SQL Server虚拟内存不足情况
所属分类:
数据库
/
MsSql
阅读数: 525
收藏 0
赞 0
分享
解决SQL Server虚拟内存不足情况
症状
在具有 2 GB 或更多 RAM 的计算机上,除了 256 MB (SQL Server 7.0) 或 384 MB (SQL Server 2000) 虚拟地址空间之外,SQL Server 在启动过程中保留剩下的所有虚拟地址空间以供缓冲池使用。另外,为了存储数据和过程缓存,SQL Server 使用缓冲池内存为来自 SQL Server 进程的大多数小于 8 KB 的其他内存请求提供服务。剩下的未保留内存准备用于不能从缓冲池得到服务的其他分配。这些分配包括、但不限于以下各项: •SQL Server 创建的所有线程的堆栈和关联的线程环境块。在 SQL Server 创建了所有 255 个工作线程之后,这大约为 140 MB。
•由在 SQL Server 地址空间(根据具体系统而有所不同)中运行的其他 DLL 或进程进行的分配,如: •任何链接的服务器中的 OLE DB 提供程序。
•通过使用 sp_OA 系统存储过程或扩展存储过程加载的 COM 对象。
•加载到地址空间中的任何映像(.exe 或 .dll),这些映像通常使用 20 到 25 MB,但是如果您使用链接的服务器、sp_OA 或扩展存储过程,则这些映像可能使用更多的空间。
•进程堆和 SQL Server 可能创建的任何其他堆。在启动过程中,此空间通常为 10 MB,但是如果您使用链接的服务器、sp_OA 或扩展存储过程,则此空间可能更多。
•来自 SQL Server 进程的大于 8 KB 的分配,例如较大查询计划、网络数据包大小配置选项接近于 8 KB 时发送和接收缓冲区等情况所需要的分配。要查看此数字,请查找在 DBCC MEMORYSTATUS 中报告的 OS Reserved 值,该值是作为 8 KB 页的数目报告的。通常,该值为 5 MB。
•跟踪缓冲池中每个缓冲区状态信息的数组。该值通常约为 20 MB,除非 SQL Server 运行时启用了地址窗口化扩展插件 (AWE),在这种情况下,该值将会显著提高。
在拥有大量数据库的系统上,日志格式化所需的 64 KB 分配可能会占用所有剩余的虚拟内存。这之后的分配将失败,导致本文的“症状”一节中列出的一个或多个错误。
通过使用 -g 启动参数,您可以指示 SQL Server 保留附加的虚拟内存可用,以便这些与日志相关的分配和其他正常分配加在一起也不会用完虚拟地址空间。
下表根据数据库的数目和服务器版本列出 -g 值的一些建议初始值: DatabasesSQL Server 7.0SQL Server 2000
250-g134N/A
500-g185N/A
750-g237N/A
1000-g288-g288
1250-g340-g340
1500-g392-g392
此表是使用列出的典型值进行计算的,并且此计算是基于没有使用链接的服务器活动、sp_OA 或扩展存储过程这一假设的。它还假设您没有使用 AWE 和 SQL 事件探查器。出现以上任意一种情况都需要您增加 -g 的值。
如果服务器上数据库的数目超过此数目,Microsoft 建议您在运行该服务器之前进行慎重的考虑,因为系统上具有如此数目的数据库所需的系统开销将占用缓冲池中的大量虚拟内存,从而可能导致系统整体性能下降。
: 打造SQL Server2000的安全策略
更多精彩内容
其他人还在看
SQL Substring提取部分字符串
SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样
评论 0
收藏 0
赞 0
分享
用户"sa"登陆失败 SQLServer 错误18456的解决方法
sqlserver下用sa登录提示18456错误的解决方法。
评论 0
收藏 0
赞 0
分享
drop,truncate与delete的区别
这里说的delete是指不带where子句的delete语句
评论 0
收藏 0
赞 0
分享
SQL语句查询数据库中重复记录的个数
一个sql语句:一个表test有四个字段id,a,b,c,如果表中的记录有三个字段a,b,c都相等,则说明这条记录是相同的,求相同的记录的个数 。
评论 0
收藏 0
赞 0
分享
SQL 导入导出Excel数据的语句
从Excel文件中,导入数据到SQL数据库中,很简单
评论 0
收藏 0
赞 0
分享
可以获取客户端的IP地址的sql语句
利用SQL语句得到客户端的IP地址的代码
评论 0
收藏 0
赞 0
分享
SQL 根据汉字获取全拼的代码
SQL 根据汉字获取全拼(有些字还没有添加上去,请自已加上去,涂聚文注)
评论 0
收藏 0
赞 0
分享
sqlserver exists,not exists的用法
exists,not exists的使用方法示例,需要的朋友可以参考下。
评论 0
收藏 0
赞 0
分享
sqlserver substring函数使用方法小结
在操作sqlserver时候用到了substring函数,特整理一些实例,需要的朋友可以参考下。
评论 0
收藏 0
赞 0
分享
sql 判断数据库,表,存储过程等是否存在的代码
sql下用了判断各种资源是否存在的代码,很实用。需要的朋友可以参考下。
评论 0
收藏 0
赞 0
分享
查看更多
网络赚钱
更多
网赚之谈:如何用最少的钱做最大化的网站推广
代刷信誉不能信,哪些网络兼职值得信赖呢?说说那些可靠的网络兼职
潘定国的粉丝经济学的重点:移动互联网核心是以人为本
网赚感悟:网站为什么不赚钱?网赚没你想的那么简单
如何适当提高垃圾站Google
未来5大网络销售模式选哪种好?
站长故事
更多
曾与前苹果CEO搭档 Zeta公司营收过亿美元背后的经验与教训
站长故事 一位“苦逼站长”的心酸 SEO真的如此简单吗?
作为站长的你是否已有危机感:你被盯上了
浅谈:一个草根站长的服装论坛赚钱经验
浅谈网站站长之现状
90后男子新婚杀妻后将照片发朋友圈续:被判死缓