中国网络-ITPro俱乐部's Archiver

跃跃领舞 发表于 2007-1-23 08:48

KB325044:如何解决Exchange Server 2003中的虚拟内存碎片问题

如何解决 Exchange Server 2003 和 Exchange 2000 Server 中的虚拟内存碎片问题[align=left][table][tr][td][align=left]文章编号[/align][/td][td][align=left]:[/align][/td][td][align=left]325044[/align][/td][/tr][tr][td][align=left]最后修改[/align][/td][td][align=left]:[/align][/td][td][align=left]2006年9月27日[/align][/td][/tr][tr][td][align=left]修订[/align][/td][td][align=left]:[/align][/td][td][align=left]17.0[/align][/td][/tr][/table][/align]




[b]重要说明[/b]:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
[url=http://support.microsoft.com/kb/256986/][color=#0000ff]256986[/color][/url] [url=http://support.microsoft.com/kb/256986/]http://support.microsoft.com/kb/256986/[/url]) Microsoft Windows 注册表说明
本页[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]概要[/color][/url] [url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]概述[/color][/url]
[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]如何监视虚拟内存和检测虚拟内存碎片[/color][/url] [url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]应用程序事件日志[/color][/url]
[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]性能日志和警报[/color][/url]


[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]如何发现虚拟内存碎片问题[/color][/url]
[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]如何优化虚拟内存使用量[/color][/url]


[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]更多信息[/color][/url]
[url=http://support.microsoft.com/kb/325044/zh-cn#][img]http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gif[/img][color=#0000ff]参考[/color][/url]

概要本文讨论如何排查由 Microsoft Exchange Server 2003 和 Microsoft Exchange 2000 Server 中虚拟内存碎片问题引发的事件 ID 9582 警告消息和错误消息。本文还包括有关如何监视服务器上的虚拟内存使用量、检测虚拟内存碎片以及优化虚拟内存使用量的信息。此外,本文中还有一个资源列表,可以帮助您解决 Exchange 2003 和 Exchange 2000 中的虚拟内存碎片问题并优化虚拟内存使用量。


概述虚拟内存碎片是这样一种情况,其中虚拟内存可用于某个进程,但所有可用虚拟内存块的大小都不足。经过一段时间后就会出现内存碎片,这是因为内存分配的大小以及每次分配的有效期都处于变化之中。如果扩展服务器以便处理更多用户和更大的负载量,服务器运行 Microsoft Exchange 信息存储进程 (Store.exe) 时可能会出现虚拟内存不足。如果发生此问题,则会在应用程序事件日志中记录事件 ID 9582 事件。

在某些情况下,事件 ID 9582 事件并不表示服务器的虚拟内存出现问题,可以忽略这些事件。不过,在其他情况下,虚拟内存不足可能会导致邮件处理错误(由事件 ID 12800 事件表示)和性能下降。如果不进行检查,虚拟内存碎片可能会导致严重的性能下降和意外现象。

计算机中安装的物理随机存取存储器 (RAM) 量与虚拟内存量之间几乎没有联系。因此,不能通过增加更多的物理 RAM 来解决虚拟内存不足的问题。此外,虚拟内存错误和虚拟内存碎片问题并不只是在主动/主动服务器群集上才会发生。这些问题在主动/被动服务器群集以及运行 Exchange 2003 或 Exchange 2000 的独立服务器上也会发生。

[b]注意[/b]:虚拟内存问题在 Exchange 2003 群集配置或 Exchange 2000 群集配置中更为普遍,因为这些环境通常用于扩展 Exchange,以承载上千个用户以及多个存储组和邮件数据库。


如何监视虚拟内存和检测虚拟内存碎片可以使用事件查看器的应用程序事件日志和性能日志和警报工具监视 Exchange 2003 和 Exchange 2000 中的虚拟内存使用量并检测虚拟内存碎片。

应用程序事件日志每天监视事件查看器中的应用程序事件日志中是否有事件 ID 9582 事件。当虚拟内存的最大空闲块减至 32 MB 时,应用程序事件日志中就会出现事件 ID 9582 警告消息。可以使用在每次记录事件 ID 9582 消息时都生成管理警报的监视工具。



[b]事件 ID 9582 警告消息[/b]

当 Exchange 服务器的空闲连续虚拟地址空间小于 32 MB 时,应用程序事件日志中就会记录以下警告消息: Source:MSExchangeIS
Category:Performance
ID: 9582
Type:Warning
Description:
The virtual memory necessary to run your Exchange server is fragmented in such a way that performance may be affected.It is highly recommended that you restart all Exchange services to correct this issue.

For more information, click <[url=http://search.support.microsoft.com/search/?adv=1]http://search.support.microsoft.com/search/?adv=1>[/url];
记录此警告消息后,请按照下列步骤操作:
[table][tr][td]1.[/td][td]准备并执行在未来 36 到 72 小时内关机然后重新启动服务器的步骤。[/td][/tr][tr][td]2.[/td][td]要确定衰减率,请使用性能日志和警报工具监视下面用于“MSExchangeIS”性能对象的计数器:[table][tr][td]•[/td][td][b]VM 大空闲块总字节数[/b][/td][/tr][/table]使用此数据有助于计划适当的时间(未来 36 到 72 小时内),以便关机然后重新启动服务器。[/td][/tr][/table][b]事件 ID 9582 错误消息[/b]

当 Exchange 服务器的空闲连续虚拟地址空间小于 16 MB 时,应用程序事件日志中就会记录以下错误消息: Source:MSExchangeIS
Category:Performance
ID: 9582
Type:Error
Description:
The virtual memory necessary to run your Exchange server is fragmented in such a way that performance may be affected.It is highly recommended that you restart all Exchange services to correct this issue.

For more information, click <[url=http://search.support.microsoft.com/search/?adv=1]http://search.support.microsoft.com/search/?adv=1>[/url];
对于此级别的虚拟内存碎片,Store.exe 进程既无法创建额外的堆,也无法正确安装和卸载存储组。如果“VM 最大块大小”计数器小于 10 MB,则无法安装存储组。记录了事件 ID 9582 错误消息后,准备在下次有机会时关机,然后重新启动服务器。例如,在当天晚上或第二天早上关机然后重新启动服务器。这样可能有助于避免在高峰使用时间可能发生的性能问题。

当您关机然后重新启动服务器以清除虚拟内存碎片时,如果 Exchange 2000 Server 是在群集环境中配置的,则还需要考虑其他一些因素。将群集资源从一个节点移到另一个节点时,此过程不能保证虚拟内存地址空间是“干净”的。如果群集资源由目标群集节点所拥有,并且群集资源移到被动节点(事先没有重新启动目标节点),则您可能会在此被动节点上遇到虚拟内存碎片。要避免出现这种情况并清除 Exchange 2000 Server 群集环境中的虚拟内存碎片,请按照下列步骤操作:[table][tr][td]1.[/td][td]在将群集资源移到被动节点之前,重新启动被动节点。

此步骤有助于确保群集资源移到具有“干净”的虚拟内存地址空间的服务器上。[/td][/tr][tr][td]2.[/td][td]将群集资源移到被动节点上。[/td][/tr][tr][td]3.[/td][td]重新启动以前拥有该群集资源的节点。[/td][/tr][/table][b]注意[/b]:当资源记录已移至群集中的另一节点后,Exchange Server 2003 会自动重新启动 Store.exe 服务,以便在该节点上重置 Store.exe 地址空间。因此,在下次 Exchange 虚拟服务器移回被动节点时,将使用“干净”地址空间运行 Store.exe。


[b]事件 ID 9665 警告消息[/b]

Exchange 2003 在 Store.exe 进程启动时执行最优内存配置检查。如果未优化内存设置,会在事件查看器的应用程序事件日志中记录事件 ID 9665 警告消息。如果满足以下任一条件,则记录此警告消息:[table][tr][td]•[/td][td]Exchange 安装在运行任何版本的 Microsoft Windows 2000 Server 的计算机上,且注册表中 [b]SystemPages[/b] 的设置值不在 24000 到 31000 范围内。[/td][/tr][tr][td]•[/td][td]Exchange 安装在运行 Microsoft Windows 2000 Advanced Server 或 Microsoft Windows 2000 Datacenter Server 的计算机上,且服务器上安装了 1 GB 或更多的物理内存,但未在 Boot.ini 文件中设置 [b]/3GB[/b] 开关。[/td][/tr][tr][td]•[/td][td]Exchange 安装在运行 Microsoft Windows Server 2003 Standard Edition、Microsoft Windows Server 2003 Enterprise Edition 或 Microsoft Windows Server 2003 Datacenter Edition 的计算机上,且注册表中 [b]SystemPages[/b] 的值设置为除 0 以外的一个值。[/td][/tr][tr][td]•[/td][td]Exchange 安装在运行 Windows Server 2003 Standard Edition、Windows Server 2003 Enterprise Edition 或 Windows Server 2003 Datacenter Edition 的计算机上,服务器上安装了 1 GB 或更多内存,且设置了 [b]/3GB[/b] 开关,但 Boot.ini 文件中没有 [b]/userva[/b] 开关或其设置值不在 3030 到 2970 范围内。[/td][/tr][tr][td]•[/td][td]Exchange 安装在运行任何版本 Windows 2000 Server 或 Windows Server 2003 的计算机上,且注册表中 [b]HeapDeCommitFreeBlockThreshold[/b] 的值设置为除 0x00040000 以外的一个值。 [/td][/tr][/table]在记录事件 ID 9665 警告消息时,请按照下列步骤操作:[table][tr][td]1.[/td][td]检查注册表中的 SystemPages 设置和 HeapDeCommitFreeBlockThreshold 设置。[/td][/tr][tr][td]2.[/td][td]检查 Boot.ini 文件中的 [b]/3GB[/b] 开关和 [b]/userva[/b] 开关。 [/td][/tr][/table]有关这些设置的推荐值的更多信息,请参见本文后面的[url=http://support.microsoft.com/kb/325044/zh-cn#11][color=#0000ff]“如何优化虚拟内存使用量”[/color][/url] 一节。

[b]注意[/b]:如果要关闭内存配置检查,请将 Suppress Memory Configuration Notification DWORD 值添加到以下注册表项中,然后将该值设置为 [b]1[/b]: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem
[b]注意[/b]:运行 Microsoft Small Business Server 的服务器上不会进行内存配置检查。



[b]事件 ID 12800 错误消息[/b]

在虚拟内存碎片问题非常严重的情况下,可能会发生邮件处理问题和邮件转换问题。用户可能会遇到性能问题并且可能无法访问他们的邮件。如果以下事件在应用程序事件日志中反复出现(每次出现的间隔仅为几秒),则表示虚拟内存碎片问题已经相当严重: Source:MSExchangeIS
Category:Content Engine
ID: 12800
Type:Error
Description:
Message processing failed because there is not enough available memory (8007000E-82000387).
[b]注意[/b]:当用于处理邮件的虚拟内存不足,或者邮件格式存在问题时,您可能会在应用程序事件日志中看到此事件。此事件单独出现并不表示存在虚拟内存碎片问题。但是,在短时间内多次出现此事件则说明服务器上的虚拟内存碎片问题已经相当严重了。

性能日志和警报以下计数器是最重要的计数器,用于监视 Exchange 2003 和 Exchange 2000 中的 Store.exe 进程中的虚拟内存碎片:[table][tr][td]•[/td][td]性能对象:[b]MSExchangeIS[/b]
计数器:[b]VM 最大块大小[/b]

此计数器显示最大空闲虚拟内存块的大小(以字节为单位)。此计数器显示为一条随着虚拟内存的使用而向下倾斜的线。如果此计数器低于 32 MB,Exchange 会在应用程序事件日志中记录事件 ID 9582 警告消息。如果此计数器低于 16 MB,Exchange 会在应用程序事件日志中记录事件 ID 9582 错误消息。如果最大空闲块很小(小于 10 MB),则服务器进入一种临界状态,在此状态下,邮件操作可能会失败并会重复记录事件 ID 12800 错误消息。 [/td][/tr][/table]还可以使用以下计数器监视 Store.exe 进程中的虚拟内存:[table][tr][td]•[/td][td]性能对象:[b]MSExchangeIS[/b]
计数器:[b]VM 空闲块总数[/b]

此计数器显示空闲虚拟内存块的总数(与它们的大小无关)。当您监视虚拟内存时,此计数器显示为一条呈金字塔形状的线。可以使用此计数器衡量可用虚拟内存出现碎片的速度。要计算块大小的平均值,请使用以下计数器: 性能对象:[b]进程[/b]
计数器:[b]虚拟字节[/b]
实例:[b]存储[/b]
性能对象:[b]MSExchangeIS[/b]
计数器:[b]VM 空闲块总数[/b]
要计算块大小的平均值,用“Process”性能对象的“虚拟字节”计数器的“STORE”实例除以“MSExchangeIS”性能对象的“VM 空闲块总数”。[/td][/tr][tr][td]•[/td][td]性能对象:[b]MSExchangeIS[/b]
计数器:[b]VM 大空闲块总字节数[/b]

此计数器显示所有大于或等于 16 MB 的空闲虚拟内存块大小的总数(以字节为单位)。此计数器显示为一条随着虚拟内存的使用而向下倾斜的线。可以使用此计数器和“VM 16 MB 总空闲块”计数器来监视虚拟内存碎片速度和服务器的虚拟内存日常状态。[/td][/tr][/table]如何发现虚拟内存碎片问题要发现 Exchange 2003 和 Exchange 2000 中的虚拟内存碎片问题,请按照下列步骤操作:[table][tr][td]1.[/td][td]查看事件查看器中应用程序事件日志的内容,确定其中是否记录了事件 ID 9582 警告消息或事件 ID 9582 错误消息。

[b]注意[/b]:虚拟内存在峰值活动期间低于 32 MB 阈值,在活动较少期间显著增加,这种现象在有些用户很多的环境中可能很常见。[/td][/tr][tr][td]2.[/td][td]使用性能日志和警报工具监视以下计数器: 性能对象:[b]MSExchangeIS[/b]
计数器:[b]VM 最大块大小[/b]


密切注意此计数器的值。要查看虚拟内存使用量趋势,请在 18 到 24 小时的一段时间内每隔 1 分钟对此计数器进行一次记录,然后查看“最小”值以记录最低级别。如果此计数器指示虚拟地址空间不足,请按照本文的[url=http://support.microsoft.com/kb/325044/zh-cn#11][color=#0000ff]“如何优化虚拟内存使用量”[/color][/url] 一节中的步骤操作。[/td][/tr][tr][td]3.[/td][td]确定其他与信息存储有关的进程(如防病毒程序)是否正在将虚拟内存降至低于 32 MB 阈值或低于 16 MB 阈值的级别。例如,如果一个配置为扫描邮件数据库的防病毒程序将虚拟内存块降至小于 32 MB,则会在应用程序事件日志中记录事件 ID 9582 警告消息。虚拟内存级别可能仅稍小于 32 MB 阈值,不会影响性能。在没有用户活动的时间内(例如正常工作时间后),虚拟内存将增加并且不再记录事件 ID 9582 警告消息。

如果性能可以让人接受,并且虚拟内存是在用户活动较少时增加,您可能不必执行相应的步骤来解决虚拟内存问题。但是,如果您预计用户负载将会增加,您可能需要考虑执行相应的步骤来减小服务器上的虚拟内存消耗,以使 Exchange 2003 或 Exchange 2000 可以处理较大的负载。[/td][/tr][/table]如何优化虚拟内存使用量[b]警告[/b]:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。
要优化虚拟内存使用量并帮助减少虚拟内存碎片问题,请按照下列步骤操作:[table][tr][td]1.[/td][td]安装可用于 Microsoft Windows Server 2003 或 Windows 2000 以及可用于 Exchange 2003 或 Exchange 2000 的最新 Service Pack。 有关如何获取最新 Service Pack 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/260910/][color=#0000ff]260910[/color][/url] [url=http://support.microsoft.com/kb/260910/]http://support.microsoft.com/kb/260910/[/url]) 如何获取最新的 Windows 2000 Service Pack
[url=http://support.microsoft.com/kb/301378/][color=#0000ff]301378[/color][/url] [url=http://support.microsoft.com/kb/301378/]http://support.microsoft.com/kb/301378/[/url]) 如何获取最新的 Exchange 2000 Server Service Pack
[b]注意[/b]:Exchange 2000 Server Service Pack 3 (SP3) 中引入了行为更改,以便从较高的内存位置分配“扩展存储引擎 (ESE)”对象。实现这种“从高到低”的分配方式有助于减少虚拟内存碎片。[/td][/tr][tr][td]2.[/td][td]在 Boot.ini 文件中设置 [b]/3GB[/b] 开关。

如果 Exchange 2003 或 Exchange 2000 安装在以下任何一种操作系统上,并且计算机上安装了大于 1 GB 的物理内存,请在 Boot.ini 文件中设置 [b]/3GB[/b] 开关:[table][tr][td]•[/td][td]Microsoft Windows Server 2003, Standard Edition[/td][/tr][tr][td]•[/td][td]Microsoft Windows Server 2003 Enterprise Edition[/td][/tr][tr][td]•[/td][td]Microsoft Windows Server 2003 Datacenter Edition[/td][/tr][tr][td]•[/td][td]Microsoft Windows 2000 Advanced Server[/td][/tr][tr][td]•[/td][td]Microsoft Windows 2000 Server Datacenter Server[/td][/tr][/table]此配置选项可以增加虚拟地址空间。

[b]重要说明[/b]:如果在运行 Windows 2000 Server 的计算机上运行 Exchange Server 2003 或 Exchange 2000 Server,则不要在 Boot.ini 文件中设置 [b]/3GB[/b]。此操作系统不支持该选项。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/291988/][color=#0000ff]291988[/color][/url] [url=http://support.microsoft.com/kb/291988/]http://support.microsoft.com/kb/291988/[/url]) 4 GB RAM 调优功能和物理地址扩展开关介绍
[url=http://support.microsoft.com/kb/266096/][color=#0000ff]266096[/color][/url] [url=http://support.microsoft.com/kb/266096/]http://support.microsoft.com/kb/266096/[/url]) 当物理 RAM 超过 1 GB 时 Exchange 2000 需要 /3GB 开关
使用 [b]/3GB[/b] 开关的作用之一是显著减少可用于内核的系统页面数。Microsoft 建议您在 Exchange 服务器上的 Boot.ini 文件中设置 [b]/3GB[/b] 开关,以修改默认设置并增加可以分配的系统页面数。

在基于 Windows Server 2003 的计算机上的 Boot.ini 文件中设置 [b]/3GB[/b] 开关时,请将 Boot.ini 文件中的 [b]/userva[/b] 开关设置为介于 2970 和 3030 之间的值。推荐值为 3030(此值等效于 Windows 2000 SysyemPages 值 31000)。

[b]重要说明[/b]:在 Windows 2003 中,[b]/userva[/b] 开关用于替代 SystemPages 注册表项。它们不能结合使用。如果 [b]/userva[/b] 开关的值在 SystemPages 注册表项中没有设置在 2970 和 3030 之间,且设置了 [b]/3GB[/b] 开关,那么 Exchange 2003 会将事件 ID 9665 记录到应用程序事件日志中。此事件 ID 表明未将服务器上的虚拟内存配置为使用最佳内存设置。

要在运行 Windows 2000 Server 的计算机上设置 SystemPages 注册表值,请按照下列步骤操作:[table][tr][td]1.[/td][td]单击“开始”,然后单击“运行”。[/td][/tr][tr][td]2.[/td][td]在“打开”框中,键入 regedit,然后单击“确定”。[/td][/tr][tr][td]3.[/td][td]找到并单击以下注册表项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
[/td][/tr][tr][td]4.[/td][td]在右窗格中,双击“SystemPages”。[/td][/tr][tr][td]5.[/td][td]在“数值数据”框中,键入 24000 和 31000 之间的一个值,然后单击“确定”。[/td][/tr][tr][td]6.[/td][td]退出注册表编辑器。[/td][/tr][/table][b]注意[/b]:为了使虚拟内存设置更明显,Exchange 2003 会在未优化这些内存设置的情况下记录事件 ID 9665 消息。 [/td][/tr][tr][td]3.[/td][td]尽量减少服务器上存储组的数目。

安装存储组时会使用额外的虚拟内存,而现有存储组中的额外数据库对使用的虚拟内存量的影响很小。因此,在服务器上创建额外的存储组之前,可能需要先填满一个存储组。 [/td][/tr][tr][td]4.[/td][td]在下面的注册表项中设置 HeapDeCommitFreeBlockThreshold DWORD 值: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager


HeapDeCommitFreeBlockThreshold 注册表值是堆可以收回的空闲块的最小大小。默认值是 0(零)。这表示堆管理器可以收回每个可用的 4 KB 页面。收回操作可能会造成额外的虚拟内存碎片。可以在以下注册表项中将 HeapDeCommitFreeBlockThreshold 注册表项设置为更高的值,以帮助减少虚拟内存碎片: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
用于 HeapDeCommitFreeBlockThreshold 注册表项的推荐值为“0x00040000”(十六进制格式)。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/315407/][color=#0000ff]315407[/color][/url] [url=http://support.microsoft.com/kb/315407/]http://support.microsoft.com/kb/315407/[/url]) “HeapDecommitFreeBlockThreshold”注册表项
[b]注意[/b]:HeapDeCommitFreeBlockThreshold 注册表项与 [b]/3GB[/b] 开关无关。[/td][/tr][tr][td]5.[/td][td]调整存储数据库缓存大小。

[b]警告[/b]:当您使用的是“ADSI 编辑”管理单元、LDP 实用工具或任何其他 LDAP 版本 3 的客户端时,如果对 Active Directory 对象的属性修改不当,可能会导致严重问题。要解决这些问题,您可能需要重新安装 Microsoft Windows 2000 Server、Microsoft Windows Server 2003、Microsoft Exchange 2000 Server 或 Microsoft Exchange Server 2003,或者同时重新安装 Windows 和 Exchange。Microsoft 不保证能够解决因为 Active Directory 对象属性修改不当而产生的问题。修改这些属性需要您自担风险。

要调整存储数据库缓存大小,请使用“ADSI 编辑”修改 [b]msExchESEParamCacheSizeMax[/b] 属性的值。

存储数据库缓存也称为 ESE 缓冲区,在数据库页面被提交到存储区之前,该缓冲区为这些数据库页面提供较大的缓存区域(每个页面 4 KB)。默认情况下,Exchange 2000 将最多 229376 页面 (896 MB) 的内存用于数据库缓存。默认情况下,Exchange 2003 会查询计算机的内存配置,如果服务器上设置了 [b]/3GB[/b] 开关,则使用最多 229376 页面 (896 MB) 的内存,如果服务器上未设置 [b]/3GB[/b] 开关,则使用 147456 页面 (576 MB) 的内存。在具有 2 GB 以上内存的服务器中,可能需要增加 ESE 缓冲区的大小。但是,这样做可能会产生内存碎片,因为可用于其余存储功能的地址空间减少了。Microsoft 建议不要将此值设置为大于 311296 页面 (1200 MB)。

如果应用程序事件日志中记录了事件 ID 9582 信息,通过减小数据库缓存大小,也许能够解决导致出现这些事件的问题。为此,Microsoft 建议您指定一个值,该值要小于 [b]msExchESEParamCacheSizeMax[/b] 属性的默认值并且是 8192 字节的倍数。但是减小数据库缓存大小后,Store.exe 进程会更加频繁地向磁盘执行读写操作,这可能会影响服务器的性能。

在增加最大数据库缓存大小之前,请在正常负载情况下,使用性能日志和警报监视“Process”对象的“虚拟字节”计数器的“STORE”实例。此计数器报告 Store.exe 进程所使用的虚拟地址空间的当前大小(以字节为单位)。 有关如何修改数据库缓存大小的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/266768/][color=#0000ff]266768[/color][/url] [url=http://support.microsoft.com/kb/266768/]http://support.microsoft.com/kb/266768/[/url]) 如何在 Exchange 2000 Server 中修改存储数据库最大缓存大小
[b]注意[/b]:确保给 [b]msExchESEParamCacheSizeMax[/b] 属性指定的值在 32 MB 边界上结束(即是 32 MB 的倍数)。[/td][/tr][tr][td]6.[/td][td]减少 ESE 打开表的最大数目。

[b]警告[/b]:当您使用的是“ADSI 编辑”管理单元、LDP 实用工具或任何其他 LDAP 版本 3 的客户端时,如果对 Active Directory 对象的属性修改不当,可能会导致严重问题。要解决这些问题,您可能需要重新安装 Microsoft Windows 2000 Server、Microsoft Windows Server 2003、Microsoft Exchange 2000 Server 或 Microsoft Exchange Server 2003,或者同时重新安装 Windows 和 Exchange。Microsoft 不保证能够解决因为 Active Directory 对象属性修改不当而产生的问题。修改这些属性需要您自担风险。
Exchange 2000 使用的存储引擎缓存有关当前没有被访问的文件夹的数据。在有些情况下,这可能会导致虚拟内存碎片。缓解这种情况的一种方法是减少 Exchange 允许打开的表的最大数目。8 路服务器上的默认设置是每个存储组 27600 个表。如果降低此值,可能会减少虚拟内存碎片问题。但是,降低此值也可能会导致其他情况,如可能由于打开的表过多而使操作失败,并且可能会收到以下错误消息: Error -1311
JET_errTooManyOpenTables
[b]重要说明[/b]:仅当 Microsoft 产品支持服务的支持人员建议您修改此设置时才应这么做。

Exchange 2003 使用不同的方法缓存有关当前没有被访问的文件夹的数据。因此,不要认为减少打开表的最大数目对于减少虚拟内存碎片问题是必需的或有效的。

要减少 ESE 维护的打开表的最大数目,请将每个存储组对象中的 [b]msExchESEParamMaxOpenTables[/b] 属性设置为“27600”。为此,请按照下列步骤操作:[table][tr][td]a. [/td][td]启动“ADSI 编辑”。

[b]注意[/b]:“ADSI 编辑”包括在 Windows 2000 支持工具中。要安装 Windows 2000 支持工具,请右键单击 Windows 2000 CD-ROM 的 Support\Tools 文件夹中的“Suptools.msi”文件,然后单击“安装”。[/td][/tr][tr][td]b. [/td][td]依次展开“配置容器 [ServerName.DomainName.com]”、“CN=Configuration,DC=DomainName,DC=com”、“CN=Services”、“CN=Microsoft Exchange”、“CN=OrganizationName”、“CN=Administrative Groups”、“CN=Administrative Group”(其中 Administrative Group 是包含要修改的存储组的管理组)、“CN=Servers”、“CN=ServerName”、“CN=InformationStore”。[/td][/tr][tr][td]c. [/td][td]右键单击“CN=Storage Group”(其中 Storage Group 是要修改的存储组),然后单击“属性”。[/td][/tr][tr][td]d. [/td][td]在“请选择要查看的属性”列表中,单击“两者”。[/td][/tr][tr][td]e. [/td][td]在“选择一个要查看的属性”列表中,单击“msExchESEParamMaxOpenTables”。[/td][/tr][tr][td]f. [/td][td]在“编辑属性”框中,键入 27600,然后单击“设置”。[/td][/tr][tr][td]g. [/td][td]单击“应用”,单击“确定”,然后退出“ADSI 编辑”。[/td][/tr][/table][/td][/tr][/table]更多信息Microsoft 产品支持服务可用于涉及事件 9582 警告和错误的众多情况。多数情况下,可忽略 Exchange 内存碎片问题。该问题通常由第三方软件泄漏内存引起。

最常见问题由打开上千个对象的第三方软件引起。这些对象可以是邮件 (OMSG)、文件夹 (OFOLD) 或视图 (VMSG)。虚拟软件、第三方无线连接软件、Outlook 加载项或其他软件可以打开这些对象。这些打开的对象会消耗内存。内存消耗量取决于对象的类型、成员变量的大小以及其他众多因素。通常,应用程序无法打开上千个这样的对象,且 Exchange 存储进程无法使用正常运行所需的内存。

默认情况下,在 Exchange 2000 中不限制 OMSG 对象的数目。在 Exchange 2003 中,限制为每 MAPI 会话 250 个 OMSG 对象。可对此限制进行相应调整。检查此设置最简便的方法是在 Exchange 系统管理器中查看“打开的邮件数”、“打开的附件数”和“打开的文件夹数”中的值。为此,请按照下列步骤操作:[table][tr][td]1.[/td][td]右键单击记录 9582 事件的服务器上邮箱存储对象下的“Logons”文件夹,指向“查看”,然后单击“添加/删除列”。[/td][/tr][tr][td]2.[/td][td]将“打开的邮件数”、“打开的附件数”和“打开的文件夹数”几列添加到“显示的列”列表中。[/td][/tr][/table]必须针对服务器上的每个邮箱存储检查该设置(如果适用)。选择其他各列后,应依次按打开的邮件数、打开的文件夹数和打开的附件数的顺序对这些列进行排序。具有成百甚至上千个打开的邮件、文件夹或附件的任何用户的操作都会导致出现潜在问题。 [url=http://support.microsoft.com/kb/830829/][color=#0000ff]830829[/color][/url] [url=http://support.microsoft.com/kb/830829/]http://support.microsoft.com/kb/830829/[/url]) Exchange Server 2003 计算机可能会在 MAPI 客户端打开某些服务器对象的多个默认值后停止响应


参考有关如何解决 Exchange 2000 中虚拟内存碎片问题的更多信息,请查看支持网络发布“解决 Microsoft Exchange 2000 Server 中的虚拟内存碎片问题”。为此,请访问下面的 Microsoft 网站: [url=http://support.microsoft.com/default.aspx?scid=kb;en-us;329864][color=#0000ff]http://support.microsoft.com/default.aspx?scid=kb;en-us;329864[/color][/url] [url=http://support.microsoft.com/default.aspx?scid=kb]http://support.microsoft.com/default.aspx?scid=kb[/url];en-us;329864)
有关如何解决 Exchange 2000 中的性能问题的更多信息,请查看支持网络发布“Microsoft Exchange 2000 Server:解决性能问题”。为此,请访问下面的 Microsoft 网站: [url=http://support.microsoft.com/default.aspx?scid=kb;en-us;816893][color=#0000ff]http://support.microsoft.com/default.aspx?scid=kb;en-us;816893[/color][/url] [url=http://support.microsoft.com/default.aspx?scid=kb]http://support.microsoft.com/default.aspx?scid=kb[/url];en-us;816893)
[url=http://support.microsoft.com/kb/815372/][color=#0000ff]815372[/color][/url] [url=http://support.microsoft.com/kb/815372/]http://support.microsoft.com/kb/815372/[/url]) 如何优化 Exchange Server 2003 中的内存使用量
[url=http://support.microsoft.com/kb/317411/][color=#0000ff]317411[/color][/url] [url=http://support.microsoft.com/kb/317411/]http://support.microsoft.com/kb/317411/[/url]) 如何收集数据以解决 Exchange 虚拟内存问题
[url=http://support.microsoft.com/kb/296073/][color=#0000ff]296073[/color][/url] [url=http://support.microsoft.com/kb/296073/]http://support.microsoft.com/kb/296073/[/url]) 监视 Exchange 2000 内存碎片
[url=http://support.microsoft.com/kb/279615/][color=#0000ff]279615[/color][/url] [url=http://support.microsoft.com/kb/279615/]http://support.microsoft.com/kb/279615/[/url]) XADM:可用虚拟内存不足会影响服务器性能
[url=http://support.microsoft.com/kb/266768/][color=#0000ff]266768[/color][/url] [url=http://support.microsoft.com/kb/266768/]http://support.microsoft.com/kb/266768/[/url]) 如何在 Exchange 2000 Server 中修改存储数据库最大缓存大小
[url=http://support.microsoft.com/kb/286350/][color=#0000ff]286350[/color][/url] [url=http://support.microsoft.com/kb/286350/]http://support.microsoft.com/kb/286350/[/url]) 如何使用 ADPlus 解决“挂起”和“崩溃”问题
有关 3 /GB 开关的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/291988/][color=#0000ff]291988[/color][/url] [url=http://support.microsoft.com/kb/291988/]http://support.microsoft.com/kb/291988/[/url]) 4 GB RAM 调优功能和物理地址扩展开关介绍
[url=http://support.microsoft.com/kb/266096/][color=#0000ff]266096[/color][/url] [url=http://support.microsoft.com/kb/266096/]http://support.microsoft.com/kb/266096/[/url]) 当物理 RAM 超过 1 GB 时 Exchange 2000 需要 /3GB 开关
[url=http://support.microsoft.com/kb/313707/][color=#0000ff]313707[/color][/url] [url=http://support.microsoft.com/kb/313707/]http://support.microsoft.com/kb/313707/[/url]) XADM:当邮件负载较重时,包含 Boot.ini 文件中“/3GB”开关的 Exchange 2000 Server 可能会断开网络连接
[url=http://support.microsoft.com/kb/328882/][color=#0000ff]328882[/color][/url] [url=http://support.microsoft.com/kb/328882/]http://support.microsoft.com/kb/328882/[/url]) Exchange 内存使用量和 /3GB 开关
有关如何解决特定虚拟内存碎片问题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: [url=http://support.microsoft.com/kb/272537/][color=#0000ff]272537[/color][/url] [url=http://support.microsoft.com/kb/272537/]http://support.microsoft.com/kb/272537/[/url]) XADM:虚拟内存通知计算不正确
[url=http://support.microsoft.com/kb/306860/][color=#0000ff]306860[/color][/url] [url=http://support.microsoft.com/kb/306860/]http://support.microsoft.com/kb/306860/[/url]) XADM:监视可用虚拟内存状态时内存状态不正确
[url=http://support.microsoft.com/kb/313084/][color=#0000ff]313084[/color][/url] [url=http://support.microsoft.com/kb/313084/]http://support.microsoft.com/kb/313084/[/url]) XADM:监视可用虚拟内存状态时内存状态不正确
[url=http://support.microsoft.com/kb/319682/][color=#0000ff]319682[/color][/url] [url=http://support.microsoft.com/kb/319682/]http://support.microsoft.com/kb/319682/[/url]) XGEN:Exchange 2000 信息存储报告事件 ID 327 警告消息,指出虚拟内存可能包含碎片
[url=http://support.microsoft.com/kb/324118/][color=#0000ff]324118[/color][/url] [url=http://support.microsoft.com/kb/324118/]http://support.microsoft.com/kb/324118/[/url]) XADM:扩展存储引擎数据库引擎包含虚拟内存碎片
[url=http://support.microsoft.com/kb/810985/][color=#0000ff]810985[/color][/url] [url=http://support.microsoft.com/kb/810985/]http://support.microsoft.com/kb/810985/[/url]) XADM:在 Exchange 2000 虚拟服务器上进行故障转移时出现虚拟内存碎片
[url=http://support.microsoft.com/kb/325467/][color=#0000ff]325467[/color][/url] [url=http://support.microsoft.com/kb/325467/]http://support.microsoft.com/kb/325467/[/url]) XADM:进行群集故障转移后随即出现事件 ID 9582
[url=http://support.microsoft.com/kb/315771/][color=#0000ff]315771[/color][/url] [url=http://support.microsoft.com/kb/315771/]http://support.microsoft.com/kb/315771/[/url]) XADM:群集上的信息存储因 IsAlive 检查而停止
[url=http://support.microsoft.com/kb/311901/][color=#0000ff]311901[/color][/url] [url=http://support.microsoft.com/kb/311901/]http://support.microsoft.com/kb/311901/[/url]) 系统页表项目中 4GT 调优的影响



[color=#0000ff][/color]这篇文章中的信息适用于:[align=left][table][tr][td]•[/td][td]Microsoft Exchange Server 2003 Standard Edition[/td][/tr][tr][td]•[/td][td]Microsoft Exchange Server 2003 Enterprise Edition[/td][/tr][tr][td]•[/td][td]Microsoft Exchange 2000 Server 标准版[/td][/tr][tr][td]•[/td][td]Microsoft Exchange 2000 Enterprise Server[/td][/tr][/table][/align][align=left][table][tr][td]关键字: [/td][td]kbinfo KB325044[/td][/tr][/table][/align]






Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.