问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求助:sqlserver2005如何进行内存优化

发布网友 发布时间:2022-04-07 17:39

我来回答

2个回答

热心网友 时间:2022-04-07 19:08

Microsoft SQL Server 2000 的内存管理组件消除了对 SQL Server 可用的内存进行手工管理的需要。SQL Server 在启动时根据操作系统和其它应用程序当前正在使用的内存量,动态确定应分配的内存量。当计算机和SQL Server 上的负荷更改时,分配的内存也随之更改。有关更多信息,请参见内存构架。

下列服务器配置选项可用于配置内存使用并影响服务器性能:

min server memory
max server memory
max worker threads
index create memory
min memory per query

min server memory 服务器配置选项可用于确保 SQL Server 至少以最小的分配内存量启动,并且内存低于该值时不会释放内存。可以基于 SQL Server 的大小及活动将该配置选项设置为特定的值。始终将 min server memory 服务器配置选项设置为某个合理的值,以确保操作系统不向 SQL Server 请求太多内存而影响 SQL Server 性能。

max server memory 服务器配置选项可用于:在 SQL Server 启动及运行时,指定 SQL Server 可以分配的最大内存量。如果知道有多个应用程序与 SQL Server 同时运行,而且想保障这些应用程序有足够的内存运行,可以将该配置选项设置为特定的值。如果这些其它应用程序(如 Web 服务器或电子邮件服务器)只根据需要请求内存,则 SQL Server 将根据需要给它们释放内存,因此不要设置 max server memory 服务器配置选项。然而,应用程序通常在启动时不假选择地使用可用内存,而如果需要更多内存也不请求。如果有这种行为方式的应用程序与 SQL Server 同时运行在相同的计算机上,则将 max server memory 服务器配置选项设置为特定的值,以保障应用程序所需的内存不由 SQL Server 分配出。

不要将 min server memory 和 max server memory 服务器配置选项设置为相同的值,这样做会使分配给 SQL Server 的内存量固定。动态内存分配可以随时间提供最佳的总体性能。有关更多信息,请参见服务器内存选项。

max worker threads 服务器配置选项可用于指定为用户连接到 SQL Server 提供支持的线程数。255 这一默认设置对一些配置可能稍微偏高,这要具体取决于并发用户数。由于每个工作线程都已分配,因此即使线程没有正在使用(因为并发连接比分配的工作线程少),可由其它操作(如高速缓冲存储器)更好地利用的内存资源也可能是未使用的。一般情况下,应将该配置值设置为并发连接数,但不能超过 1,024。有关更多信息,请参见max worker threads 选项。

说明当 SQL Server 运行在 Microsoft Windowsreg; 95 或 Microsoft Windows 98 上时,最大工作线程服务器配置选项不起作用。

index create memory 服务器配置选项控制创建索引时排序操作所使用的内存量。在生产系统上创建索引通常是不常执行的任务,通常调度为在非峰值时间执行的作业。因此,不常创建索引且在非峰值时间时,增加该值可提高索引创建的性能。不过,最好将 min memory per query 配置选项保持在一个较低的值,这样即使所有请求的内存都不可用,索引创建作业仍能开始。有关更多信息,请参见 index create memory 选项。

min memory per query 服务器配置选项可用于指定分配给查询执行的最小内存量。当系统内有许多查询并发执行时,增大 min memory per query 的值有助于提高消耗大量内存的查询(如大型排序和哈希操作)的性能。不过,不要将 min memory per query 服务器配置选项设置得太高,尤其是在很忙的系统上,因为查询将不得不等到能确保占有请求的最小内存、或等到超过 query wait 服务器配置选项内所指定的值。如果可用内存比执行查询所需的指定最小内存多,则只要查询能对多出的内存加以有效的利用,就可以使用多出的内存。

附实例一篇:

最近,为了能在数据库服务器中运行其他应用程序,在保持数据库操作系统版本不变的前提下对数据库服务器进行了软、硬件上的升级。在软件上,将操作系统从Windows 2000升级到Windows Server 2003;在硬件上,将服务器中的内存由原来的512MB增加到1GB(1024MB)。

在升级后的开始几个星期之内,服务器在使用中表现良好。但是不久后就发现,在服务器上同时运行的其他应用程序却出现了异常,不时地报出内存分配不足的警告。经过几次跟踪后发现,原来是SQL Server吞去了大部分内存所致。被SQL Server占用的内存由升级前的不到400MB一下子增加到现在的900MB,并且有不断增长的趋势。

通过查找原因才知道这是SQL Server 缓冲池的预期行为。默认情况下,在启动 SQL Server之后,SQL Server会根据操作系统报告的物理内存数来动态增大或缩小高速缓冲存储器的容量。只要可用物理内存大小保持在4MB到10MB之间,SQL Server 缓冲池就会继续增大(保留可用物理内存在4MB到10MB之间是为了避免操作系统因为缺少内存而频繁地换页)。如果物理可用内存变得较少的时候,则SQL Server会将一些内存释放给操作系统。

为了使运行在服务器上的应用程序都能达到比较满意的效果,同时也为了能给其他应用程序分配足够的内存,需要采取措施*SQL Server 的内存使用量。我们可以通过设置SQL Server 数据库引擎使用的内存的上下限来达到此目的。其具体步骤是:

1.打开企业管理器,展开服务器组。

2.单击该服务器,点击鼠标右键,单击属性菜单。

3.在弹出的对话框中单击内存选项卡。

内存设置方法有两种:

1.设置min server memory和max server memory 在一个范围段内。

比如,我们将它设置成最小0MB,最大255MB。这种方法在为一台服务器中运行多个应用程序分配内存时非常有用。

2.设置 min server memory 和 max server memory 为同一数值。

比如,可以将它最大和最小值都设置成255MB。这样的设置方法与窗口中的另一个选项“使用固定的内存大小” 相一致。

虽然内存最小值和最大值设置是高级选项,但在设置完毕之后,最好还是先将SQL Server服务停止后再重新运行,以便SQL Server能更好地对内存进行合理安排。

热心网友 时间:2022-04-07 20:26

访问量大没法改变,从程序和SP入手吧,减少程序与DB连接次数,优化程序SQL,。。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
唇液的的使用方法是什么? 【唇妆技巧】口红怎么画好看 让你唇唇欲动 G485联想笔记本装的XP系统下载了wifi然后校园客户端一直掉怎么办?_百 ... ...都能连上并且不用输入账号和密码我的联想G485不 大专参军有什么待遇? 大学里说的评优有什么用 优秀毕业生的称号有用吗? 童年、壮年、老年分别是指几岁的人 笔记本电脑如何输入勾叉电脑如何打勾 拼多多买的东西一直不发货怎么办?违约不发货怎么赔偿? 怎样养最快 如何养 在理发店做头发护理的产品,是发膜还是护发素还是焗油膏? 美发店需要用的产品 苹果汁沾在衣服上了怎么能洗掉 春播玉米选种关系增收增产,春播玉米选种有什么讲究? 耐高温抗锈病抗倒伏的玉米品种是什么? 梦见山上的水果树结了许多熟果,然后自己飞起来摘到许多水果 从鞍山坐机场大巴到沈阳要提前预定吗? 箱式烟花爆竹价格 火灾自动报警系统中,通信二总线和消防电话二总线是一回事么? 鞍山机场疫情期间管理严格吗? 我走鞍山机场到长沙要隔离吗? 鞍山去沈阳桃仙机场的机场大巴在哪里坐?时间是什么? 谢谢。 相对于传统485,CAN总线通讯有什么优势? 鞍山有飞机场吗? 鞍山机场的大事记 鞍山市有没有飞机场? 鞍山有军用机场吗? 怎么去鞍山?如何前往?有详细介绍吗? 要养多久才稳定? 如何检测负压设备(旋转蒸发仪)的气密性,并准确找到漏点 新注册了一个要怎样养号? 新注册的怎么养号不容易封 如何养,不被封号 用长颈漏斗等东西制取氧气 怎么检查气密性 新注册的怎么养号才成老号 干微信养号工作犯法吗 新怎么养号的最新相关信息 南宁哪里可以考摩托车驾照? 南宁摩托车驾驶证怎么考? 南宁哪里还可以考摩托车驾驶证 在南宁刚补办好摩托车驾驶证,需要多长时间才能报考C1 还没有会开摩托车 在南宁市哪里考摩托车驾驶证 南宁轻便摩托车上牌需要驾驶证吗 南宁摩托车驾驶证 南宁市摩托车驾驶证好不好考? 南宁摩托车驾驶证在哪里办?流程怎样,多少钱? 南宁市考摩托车驾驶证需要多久? 南宁市金陵镇摩托车要驾驶证吗?