怎么设置sql2008数据库最大服务器内存

怎么设置sql2008数据库最大服务器内存,第1张

在安装有SQLServer数据库的计算机上,我们在使用数据库的过程中,有时候会在任务管理器里发现sqlservr.exe这个进程的内存和CPU占用率较高。 接下来我们来看一下,如何解决上面这个问题,需要设置SQLServer数据库的内存配置。登录数据库,这里使用的是SQLServer2008,右键点击最上方的服务器名,在弹出的菜单中,点击【属性】 打开服务器属性窗口。默认显示的是第一项【常规】内容,点击第二项【内存】进行内存配置。 点击【内存】后,打开服务器内存选项配置界面。这里的【使用AWE分配内存】可以对内存进行扩展支持,我们要做的是更改下方的最大服务器内存。这个数值根据自己服务器内存大小来做适当设置。 个人建议设置本机内存的一半或稍微高一点,如机器内存为2G,那么我们这里填写1000。需要注意的是内存设置调小以后,在数据库执行较复杂SQL语句的时候,可能会比较慢,出现这种情况,我们再适当上调最大内存配置大小。

SQLSERVER的内存用在哪里?

SQL会缓存大量的数据页面,他还会缓存很多其他信息,包括存储过程的执行计划 ,特定用户的安全上下文等

如果这些信息没有在数据库中缓存,SQL都要重新计算一遍,花额外的时间,所以SQLSERVER对内存的需求是十分强烈的。

配置:

(1)如果服务器支持64位操作系统,没有特殊理由的话,请安装64位系统。这样SQL能够有效地使用 大于2GB的内存。如果一定要用32位系统,务必将SQLSERVER服务器属性里面的“使用AWE分配内存”打开。但是不要用boot.ini文件里的/3GB这个开关,即不要在boot.ini文件里加上/3GB这个参数。

(2)尽量使服务器专门供数据库使用,不要将其他服务(例如IIS,中间层应用服务等)安装在同一台机器上。多个生产应用服务在同一台机器上运行,会大大增加维护成本

(3)建议设置SQLSERVER max server memory(最大服务器内存),以确保Windows有足够的内存供系统本身使用。

情况归纳如下:

一台4GB机器,建议预留1GB,设置SQLSERVER max server memory为2.8GB

一台8GB机器,建议预留2GB,设置SQLSERVER max server memory为6GB

一台大于8GB的64位机器,建议预留3GB~4GB

如果一台服务器上还有其他应用使用内存,也要扣除他们的内存使用数

一般设置SQLSERVER min server memory(最小服务器内存)意义不大

(4)如果是企业版SQLSERVER,建议赋给SQLSERVER启动帐号lock page in memory的权限

设置方法如下:

打开组策略(运行 ,输入gpedit.msc)-》找到计算机配置-》Windows设置-》安全设置-》本地策略-》用户权限分配-》锁定内存页

在锁定内存页上右键,打开锁定内存页属性,添加SQLSERVER启动帐号进去

(5)“set working set size” 这个SQLSERVER参数在现在的Windows上不能起到固定SQL物理内存的作用,所以请永远不要使用

修改完配置之后需要重启SQLSERVER服务才能生效!!!!!

除了配置之外还有一些应对内存错误的其他一些建议:

升级Windows2003到SP2,或者使用Windows2008 ,这些版本的Windows的内存管理机制有了调整

升级硬件驱动程序,或者联系微软技术服务,帮忙检查是不是硬件方面问题引起

步骤如下:

点击Start >Run

键入WINMSD。

选择Memory选项。

记录下来计算的一个内存值物理存储器(k) SQL数据库的。

初始化SQL企业管理器。

选择为存储器分配将配置的数据库。

用鼠标右键单击在数据库并且选择配置。Server Configuration Options窗口打开。

选择Configuration选项。

移下来对内存行。有三列:“最低、最大数量、运行和当前内存分配”。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/769806.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-20
下一篇2023-08-20

发表评论

登录后才能评论

评论列表(0条)

    保存