以下的文章主要向大家讲述的是SQL Server服务器在内存升级之后出现性能恶化的问题的破解,在实际操作中我们经常遇到这一问题,以下的文章就是针对这一问题给出的具体解答方案。
不久之前,笔者一个在企业中从事网管工作的朋友向我求助关于SQL Server服务器内存升级后遇到的问题。原来,他们企业准备上一个企业邮箱系统。为了节省开支,他们准备在原来的SQL Server服务器上部署企业的邮箱服务器。为
不久之前,笔者一个在企业中从事网管工作的朋友向我求助关于SQL Server服务器内存升级后遇到的问题。原来,他们企业准备上一个企业邮箱系统。为了节省开支,他们准备在原来的SQL Server服务器上部署企业的邮箱服务器。为了提高这个服务器的性能,让其能够承担其两种应用服务的重任,所以,他们对内存进行了升级。从原先的1G升级到了2G。
但是,内存升级完以后,邮箱应用服务的性能不但没有改善,而且,还有恶化的趋势。运行一段时间后,这台服务器上运行的邮箱系统就出现了异常情况。时不时的会报出内存分配不足的情况。一开始,他们还以为是邮箱服务器跟SQL Server服务器不兼容。故还请了邮箱服务器的技术人员前来查看。经过他们的检查,发现是SQL Server服务占用的大部分内存所导致的。SQL Server服务所需要的内存,从升级之前的600M左右一下子到了1.5个G。难怪邮箱应用服务要警报说内存不够了。
一、原因分析。
笔者对这种问题已经是见怪不怪了,已经遇到过好几次类似的故障。在SQL Server数据库启动的时候,数据库系统会根据物理内存的大小来动态的增大或者缩小高速缓冲区的容量。这主要是为了提高SQL Server服务器的性能才如此的设计的。
我们知道,一般情况下,高速缓冲区越大,则SQL Server服务器的性能越好。这主要是因为有些用户查询过的数据都可以放在高速缓冲区(即内存的其中一部分)中。如此的话,当用户下次再次需要这些数据的时候,就不用到硬盘中去读取,而直接在内存中读取即可。而从内存中读取数据要比在硬盘中读取速度要快的多。
所以,只要当服务器的可用内存在4MB与10MB之间的话,数据库系统就会把它的高速缓冲区不断的扩大。如此的话,当邮箱服务器突然需要用到比较大的内存,如对邮箱进行备份或者有用户群发邮件的时候,就会报错说“内存分配不足”。
故一般只是内存升级,往往不能够解决SQL Server服务与其他应用服务抢占内存的情况。为了让SQL Server能够与其他应用服务友好的共处,数据库管理员还需要对内存进行合理的分配,限制SQL Server数据库服务内存的占用率。
二、解决 *** 。
针对他们企业的这种情况,笔者给出两个建议。一是合理地给SQL Server数据库分配内存。而是不要把SQL Server服务跟其他应用服务放在同一台服务器上,毕竟数据库服务的并发行访问比较多,对服务器的性能要求比较高。
若果企业选择之一种应对措施的话,就需要限制SQL Server服务器的内存使用率。为了使得运行在同一台服务器的SQL Server服务器与邮箱服务能够达到一个合理的性能,能够和平共处,就需要采取一定的措施限制SQL Server数据库服务的内存使用量。在SQL Server服务器中,专门提供了一个工具(数据库引擎),可以用来帮助我们干预SQL Server服务器的内存分配。
具体的说,可以按如下 *** 进行配置。
之一步:打开SQL Server企业管理器。
在SQL Server数据库中,提供了一个图形化界面的企业管理器。在这个管理平台上可以对SQL Server的大部分服务进行管理与配置。SQL Server数据库服务的内存分配规则当然也不例外,可以在这里进行调整。
第二步:找到我们需要调整的服务器。
有些企业,可能在 *** 中部署了多个SQL Server服务器。为了管理的方面,会在其中一台服务器上的企业管理器中集中进行管理。不过,这家企业他们只有一个SQL Server服务器。在我们需要调整的服务器上,右键单击,选择“属性”。然后就会弹出一个对话框。在对话框中选择“内存选项卡”。在这里就可以对数据库应用服务的内存分配 *** 进行设置。
第三步:调整相关的内存参数。
在这张选项卡中,一般有两个参数,分别为最小服务内存与更大服务内存。在实际工作中,我们往往有两种配置 *** 。
一是配置一个更大最小内存。即给SQL Server数据库应用服务设置一个更大的使用内存。如此的话,在这个更大的范围之后,数据库系统会根据实际情况,在更大内存范围之内对内存的分配进行调整。一般情况下,最小内存我们可以不设置,只对更大内存进行限制即可。这就给数据库一种自主选择的权利。可以提高内存的使用效率。
二是固定内存分配。即把“最小服务内存”与“更大服务内存”两个参数设置为相同。如此的话,不管数据库服务需要多大的内存,在服务器启动的时候,操作系统都会给其预留这么大的内存。其他的应用程序及时内存再怎么不足,也不会跨越数据库的内存领地。很明显,这种方式虽然保证了数据库服务的内存需求,但是,内存的使用率并不是很高。
针对上面两种 *** ,笔者比较倾向与使用之一种配置,即只对数据库应用服务的更大内存使用率进行限制。只要不超过这个范围,则服务器可以自主的进行调解。那么这个更大的使用率设置成多少合适呢 这主要要看企业所部属的服务了。由于这家企业,在同一台服务器上运行了邮箱服务器与数据库服务器,可能对硬件的压力比较大。因为这两个应用服务,都涉及到比较多的并发访问。所以,即使把硬件升级成了2G,估计也不能够给数据库服务分配比较多的内存。一般来说,并发性访问越多,则更好能够给其配置比较多的内存。
配置完成之后,不用重新启动,这个规则就会起效。不过笔者还是建议把SQL Server服务重新启动一下。在可以的情况下,把服务器重新启动一下更好。如此的话,操作系统就会根据这个规则,对内存进行重新的调整分配。也可以让SQL Server服务器更好的队内存进行合理的安排。如可以把SQL Serve可用内存固定在一个连续的区域内,以提高数据库的性能。
三、总结。
针对这个内存升级后所产生的烦恼,笔者有几句话说。
一是硬件升级只是数据库服务器性能提升的一个充分条件,而不是必要条件。也就是说,硬件的升级并不一定会导致服务器性能的提升。在硬件升级的同时,往往也需要调整相关的配置。让硬件升级的优势得到极大的发挥。笔者认为,有时候服务配置比纯粹的硬件升级更加重要。一些经验不足的 *** 管理人员只知道升级硬件,而忽视了服务的调整配置。他们这是走进了一个死胡同,效果往往不能够达到他们的预期。
二是一些并发性比较大的应用服务器,更好不要放在同一个SQL Server服务器上。现在企业基于服务器、客户端模式的管理软件应用越来越多。这种模式一个显著的特点,就是并发性访问比较频繁,给应用服务器带来了很大的压力。在一些性能要求比较高的企业,它们把数据库与前台的应用程序服务器都分开放置,以求优化服务器的性能。而且,现在SQL Server服务器价格已经逐渐能够被企业所接受。笔者认为,企业没有必要在这方面省钱。若多个应用服务并发性访问比较多的情况下,则更好考虑把他们部署在不同的服务器上。以提高各个应用服务的性能。
三是在同一个服务器上部署多个应用服务的话,要考虑应用服务的稳定性。因为像这家企业在同一个服务器上部署数据库与邮箱服务器,笔者并不是很赞同。因为邮箱服务器是一个比较容易遭受到攻击的服务器。垃圾邮件、病毒邮件等等都可能导致服务期运行不正常。把邮箱服务放在SQL Server数据库服务旁边,会降低数据库服务的稳定性。更好还是能够分开部署。
最近一些Windows 7用户反馈说,自己在截屏的时候出现黑屏,导致自己截的图黑呼呼一片。这个问题该怎么解决?今天小编就为大家提供一个解决的方法。 步骤 1 在windows xp时代,很多用户都曾被视频截图后的“全黑图片”困扰。对此,在解决本地播放时出现的截图变黑问题,一般有两个方法可以用来解...
ubuntu14.04应用窗口列表在哪里?在ubuntu下打开个几个应用窗口最小化后怎么切换呢,应用窗口列表在哪里呢? 1、多打开几个chrome浏览器窗口。 2、然后都做最小化处理。 3、现在我们在桌面左边的面板上找到"左右两边有小白点"的chrome浏览器应用图标,这就是chr...
经常听见有人说用Windows 7玩网络游戏的时候网络延时比较高,也就是ping比平时xp的时候高一点,一直找不到原因,很苦恼。今天我们终于找到理由了,原来是Windows 7的一个服务在作怪,这个服务叫:Multimedia Class Scheduler,就是这个服务让我的PING如此高,问题是...
最近小编在使用Windows 7的时侯遇到一个问题,就是应用程序和快捷方式不能锁定到任务栏,我当时不知道怎么回事,但是很多现有的方法都不能解决这个问题。现在我把我的解决的方法分享给大家以作参考。 问题分析 经过思考,初步判断出现该问题的原因是由于使用第三方优化软件消除快捷方式的小箭头引起的。...
经过几天的测试后发现,Windows 7用户反映的情况确实存在,但并没有达到“频繁”的情况。同时,也并非是迅雷或快车抢了带宽。(即便是抢了带宽,表现的形式也是页面打开慢,而非是掉线),寻找问题的原因过程中,我们认为是Windows 7系统对于网卡的电源管理的默认设置造成的。 下面,就以Window...
使用Windows 7的朋友都知道,任务栏上的快捷方式图标都是靠近开始菜单按钮,从左像右排列,不过也有一些用户喜欢左右对称,想要把那些快捷方式居中显示,看起来这个任务好像无从下手,其实一点也不难,只要通过下面方法就能轻松搞定。 1、首先在电脑磁盘中任何一个地方新建一个文件夹。 2、右击任务栏-&...