优化SQLServer数据库服务器内存配置的策略(2)_MySQL
bitsCN.com
序的名称,单击“停止”按钮,这时出现确认操作对话框;
④选择“是”确认操作,然后关闭对话框完成设置。
3?优化虚拟内存
在对Windows NT虚拟内存进行设置时需要合理确定各个驱动器分页文件的“起始大小”和“最大值”两个参数,它们用于指定分页文件的起始空间和最大空间。下面对这两个参数作一些解释:
起始大小:指初始创建该分页文件时的文件大小,单位为MB,根据缺省设置,这个值被设置为系统中的物理内存的大小。
最大值:指出该分页文件的最大尺寸,单位为MB。
(1)分页文件的设置原则:
①分页文件起始大小应保留缺省设置,一般情况下请不要改动;
②分页文件理想的最大尺寸为系统物理内存尺寸的2.5倍至4倍。需要说明的是:如果系统工作时不需要大量内存,请选择靠近下限的值,即用系统物理内存的2.5倍作为这个尺寸的起始值;如果系统工作时需要大量内存,请选择靠近上限的值。
(2)Windows NT虚拟内存设置步骤:
①从“控制面板”中双击“系统”图标;
②在“系统特性”对话框中单击“性能”标签;
③在虚拟内存对话框中单击“更改”按钮,这时出现“虚拟内存”对话框,上端的驱动器框逐一列出了 Windows NT所有页面文件的大小;
④在驱动器列表中,选择需要设置分页文件的驱动器盘符,在“驱动器页面文件大小”对话框中列出了 “起始大小”和“最大值”两个参数栏,填入按照上面的原则确定的数值;
⑤单击“设置”确认以上操作,然后依次单击“确定”按钮退出各个对话框,完成设置。
(3)Win95/98虚拟内存设置。
Win95/98虚拟内存设置方法、步骤和原则与Windows NT 4.0的设置大致相同,请参照上面Windows NT的设置。
4?注意事项
(1)合理确定分页文件的最大值,根据系统需求随时进行调整,使用过多虚拟内存将导致整个系统处理性能的下降。设置虚拟内存最大值的目的是使用户不必在WindowsNT的交换文件上消耗过多的磁盘空间,通常情况下如果超过了系统需要的最佳值后,生成交换文件的磁盘空间就被浪费了。
(2)尽可能设立专用硬盘配置内存交换区,或将交换空间放到主硬盘的另一个分区,同时应将主硬盘的交换文件大小降至16MB,这样主硬盘(分区)仅用来放置操作系统和应用程序,就可以减少交换次数,防止频繁交换耗费大量 CPU时间。
(3)虚拟内存技术的确改善了Windows NT系统的性能,但也受到机器硬盘空间大小、硬盘速度、处理器 (CPU)速度的影响,从理想角度出发,要提高计算机的性能就必须减少交换操作的次数,但是没有一个WindowsNT计算机不发生交换,这就要求计算机要有足够的物理内存,以保持最少的交换操作。
三、优化Microsoft SQL Server数据库内存配置
内存是影响Microsoft SQL Server系统性能的一个重要因素,SQL Server数据库安装时将为具有32MB物理内存的机器缺省配置16MB可用内存,16MB物理内存的机器缺省配置4MB可用内存。应在Microsoft SQL Server数据库安装后进行内存选项(Memory)设置,最大配置值为2GB。
为了确定SQL Server系统最适宜的内存需求,可以从总的物理内存中减去Windows NT4.0需要的内存以及其它一些内存需求后综合确定,理想的情况是给SQL Server分配尽可能多的内存,而不产生页面调度。
1?根据物理内存合理规划SQL Server可用内存
在大多数的生产环境中,服务器配备的物理内存是64MB~128MB,偶尔也有256MB的,只要配置恰当是完全可以满足SQL Server的内存需求的。下表是笔者关于SQL Server内存分配的建议规划,供参考。
物理内存 分配给SQL Server 设置值(单位:2KB)
8MB 4MB 2048
16MB 8MB 4096
32MB 16~18MB 8192~9216
48MB 28~34MB 14336~17408
64MB 40~46MB 20480~23552
128MB 100~108MB 51200~55296
256MB 216~226MB 110592~115712
512MB 464~472MB 237568~241664
以下是SQL Server内存选项(Memory)设置方法
(1)从Microsoft SQL Server程序集中启动SQL Enterprise Manager;
(2)从Server Manager窗口中选择“Server”菜单选项;
(3)在“Server”菜单中选择“Configurations”选项;
(4)在“Server Configuration”对话框中选择”Configuration”标签,Configuration窗口显示配置选项列表;
(5)选中“Memory”项目,在“Current”栏填入新值;
(6)停止并重新启动SQLServer服务,使设置生效。
2?合理扩充虚拟内存、增大SQL Server可用内存
当SQL Server系统确实需要扩大可用内存时,应在磁盘空间充足的情况下扩充供虚拟内存,并相应增大 SQL Server可用内存。具体做法是,系统管理员首先扩充服务器的虚拟内存,然后再参考上表增大SQL Server可用内存,关键是要根据系统的负载情况综合决定是否扩充内存、优化配置。
3?使用tempinRAM
SQL Server使用tempdb临时数据库作为一些查询连接操作时排序或创建临时表的工作空间。将tempdb创建在RAM中可以使系统操作性能有较大提高,而且因为tempdb在每次重启动服务器时都重建,这样即使有非正常的关闭也是较为安全的,例如停电故障。要将tempdb创建在RAM中,可以使用sp_configure进行设置,具体用法请参阅有关资料。
由于tempdbinRAM使用的内存是由系统从内存体单独分配的,与SQL Server的内存选项设置的可用内存池是分开的,使用tempdbin RAM将减少整个系统的可用内存,应根据SQL Server和服务器运行情况进行配置,否则就可能适得其反,影响系统性能。另外,适当增加tempdb数据库空间,即使不使用tempdbin RAM,也可以提高数据库的运行速度。
4?注意事项
(1)建议在生产环境中SQL Server不要设置小于32MB内存,而且数据库服务器上尽量不要运行其它应用程序;
(2)扩充供虚拟内存、增大SQL Server可用内存,应考虑物理内存使用状况和磁盘空间许可情况;
(3)在可能的情况下,要为系统留有部分额外的内存,这样在服务器上打开一个服务或添加一个进程且不改变SQL Server内存配置时,不致于使NT服务器的运行速度受到影响(变得很慢),一般认为最小为2MB最大为20MB。
四、巧用内存配置,解决统计服务器问题
一单位的统计服务器投入使用后,运行速度较慢,经排查原因,发现SQLServer中的内存选项(Memory)仅为安装缺省值――16MB(而服务器有128MB的物理内存),在将内存值调整为100MB时却误将其改成了 1000MB,使得SQL Server服务不能启动,统计数据库打不开,也就不能再次进入SQL Enterprise Manager修改内存设置了。由于近期未备份业务数据,不到万不得已不能重装SQLServer数据库,就试图用命令行参数命令来重新启动SQL Server服务,但均不能奏效,陷入了困境。我们经过仔细分析提出:既然SQL Server可用内存设置值远远大于物理内存,造成SQLServer服务不能启动,何不扩充虚拟内存呢?经设法将机器虚拟内存扩充至1000MB并重新启动,SQL Server数据库成功启动,问题迎刃而解。
五、结束语
目前,大多数单位投入使用的Microsoft SQL Server数据库服务器的物理内存一般都在64MB以上,如农业银行省、市分行的统计服务器配备128MB物理内存,只要按照上面提出的方法合理规划、优化NT和SQL Server的内存配置,使设置尽可能达到最优,应用系统就一定能够充分发挥设计功能、满足业务需求。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Golang的垃圾回收(GC)一直是开发者们关注的一个热门话题。Golang作为一门快速的编程语言,其自带的垃圾回收器能够很好地管理内存,但随着程序规模的增大,有时候会出现一些性能问题。本文将探讨Golang的GC优化策略,并提供一些具体的代码示例。Golang中的垃圾回收Golang的垃圾回收器采用的是基于并发标记-清除(concurrentmark-s

Laravel是一款广受欢迎的PHP开发框架,但有时候被人诟病的就是其速度慢如蜗牛。究竟是什么原因导致了Laravel的速度不尽如人意呢?本文将从多个方面深度解读Laravel速度慢如蜗牛的原因,并结合具体的代码示例,帮助读者更深入地了解此问题。1.ORM查询性能问题在Laravel中,ORM(对象关系映射)是一个非常强大的功能,可以让

解码Laravel性能瓶颈:优化技巧全面揭秘!Laravel作为一款流行的PHP框架,为开发者提供了丰富的功能和便捷的开发体验。然而,随着项目规模增大和访问量增加,我们可能会面临性能瓶颈的挑战。本文将深入探讨Laravel性能优化的技巧,帮助开发者发现并解决潜在的性能问题。一、数据库查询优化使用Eloquent延迟加载在使用Eloquent查询数据库时,避免

时间复杂度衡量算法执行时间与输入规模的关系。降低C++程序时间复杂度的技巧包括:选择合适的容器(如vector、list)以优化数据存储和管理。利用高效算法(如快速排序)以减少计算时间。消除多重运算以减少重复计算。利用条件分支以避免不必要的计算。通过使用更快的算法(如二分搜索)来优化线性搜索。

Laravel性能瓶颈揭秘:优化方案大揭秘!随着互联网技术的发展,网站和应用程序的性能优化变得愈发重要。作为一款流行的PHP框架,Laravel在开发过程中可能会面临性能瓶颈。本文将探讨Laravel应用程序可能遇到的性能问题,并提供一些优化方案和具体的代码示例,让开发者能够更好地解决这些问题。一、数据库查询优化数据库查询是Web应用中常见的性能瓶颈之一。在

Vivox100s参数配置大揭秘:处理器性能如何优化?在当今科技飞速发展的时代,智能手机已经成为我们日常生活不可或缺的一部分。作为智能手机的一个重要组成部分,处理器的性能优化直接关系到手机的使用体验。Vivox100s作为一款备受瞩目的智能手机,其参数配置备受关注,尤其是处理器性能的优化问题更是备受用户关注。处理器作为手机的“大脑”,直接影响到手机的运行速度

1、在桌面上按组合键(win键+R)打开运行窗口,接着输入【regedit】,回车确认。2、打开注册表编辑器后,我们依次点击展开【HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorer】,然后看目录里有没有Serialize项,如果没有我们可以单击右键Explorer,新建项,并将其命名为Serialize。3、接着点击Serialize,然后在右边窗格空白处单击鼠标右键,新建一个DWORD(32)位值,并将其命名为Star

PHP函数效率优化的五大方法:避免不必要的变量复制。使用引用以避免变量复制。避免重复函数调用。内联简单的函数。使用数组优化循环。
