您好,欢迎访问一九零五行业门户网

sqlserver虚拟表(虚拟sql数据库操作)

本文主要介绍sqlserver虚拟表(虚拟sql数据库操作),下面一起看看sqlserver虚拟表(虚拟sql数据库操作)相关资讯。
解决sql server虚拟内存不足的问题。症状是,在2 gb或更大的内存中,除了256 mb(sql server 7)或384 mb(sql server 2000)的虚拟地址空间之外,sql server将使用所有剩余的虚拟地址空间来缓冲池。此外,为了存储数据和程序的缓存,sql server使用缓冲池的内存来为大多数其他需要小于8kb sql内存的sql server进程提供服务。剩余的未预留内存是准备服务,无法从缓冲池中获得其他配置。配置包括但不限于sql server创建的所有线程的堆栈以及相关的线程环境块。在创建了sql server中的所有255个工作线程之后,这是140兆字节的ab输出。sqlserver地址空间中运行的其他dll或进程的分布(取决于特定系统),如任何链接服务器中的任何ole db访问接口。com对象是使用sp_oa系统存储过程或扩展存储过程加载的。任何图像都被加载到地址空间(。exe或。dll)。这些映像通常使用20到25 mb,但是如果使用链接服务器、sp_oa或扩展存储过程,这些映像会使用更多的空间。这可以由进程堆和sql server创建的任何其他堆来创建。在启动期间,此空间通常为10 mb,但是如果使用链接服务器、sp_oa或扩展存储过程,此空间可能会更大。在配置一个大小大于8 kb的从sql server的过程中,比如更大的查询计划和网络包大小的配置选项,接近时需要分配8 kb的发送和接收缓冲区。看这个数字,寻找操作系统的预留值。这是在dbcc memorystatus中报告的,它是8 kb页的报告。通常,该值为5 mb。跟踪缓冲池中每个缓冲区的状态信息的数组。该值通常约为20 mb,除非在sqlserver运行时启用了地址窗口扩展(awe ),在这种情况下,该值将显著提高。在具有大量数据库的系统中,日志格式化所需的64 kb分配可能会占用所有剩余的虚拟内存。之后,分配将会失败,导致本文症状部分列出的一个或多个错误。通过使用g startup参数,可以指示sql server保留额外的虚拟内存,以便这些与日志相关的分配和其他正常分配不会耗尽虚拟地址空间。下表的初始值是根据数据库和服务器版本的g值列出的数字:databasessql 7.0sql server 20。00 server 250-g134n/500-g185n/750-g237n/1000-g288-g288 1250-g340-g340 1500-g392-g392此表使用典型值列进行计算,并且此计算基于服务器、sp_oa或扩展存储过程的活动不相关的假设。假设你没有。;t使用awe和sql事件管理器。如果服务器数据库的数量超过这个数字,微软建议在运行服务器之前仔细考虑。系统的开销是因为系统数据库中需要这个数字,会占用缓冲池中大量的虚拟内存,可能会导致系统整体性能的下降。:建立sql server2000数据库安全策略。
了解更多sqlserver虚拟表(虚拟sql数据库操作)相关内容请关注本站点。
其它类似信息

推荐信息