曾经的美好 发表于 2015-9-10 12:33:08

Exchange 2007 队列数据库、队列事务日志文件超过临界值(阈值)导致无法接受邮件解决方案

  前天,客户Exchange 2007邮件系统突然出问题了。具体表现如下:
  只能发邮件,不能收邮件。OUTLOOK中点击“发送和接收”测试,只有正在发送,没有正在接收状态。
  查看日志发现如下提示:



  The Microsoft Exchange Transport service is rejecting message submissions because the available disk space has dropped below the configured threshold.
  
  Resource utilization of the following resources exceed the normal level:
  Queue database and disk space ("C:"Program Files"Microsoft"Exchange Server"TransportRoles"data"Queue"mail.que") = 98%
  Queue database logging disk space ("C:"Program Files"Microsoft"Exchange Server"TransportRoles"data"Queue"") = 98%
  
  No components were disabled because of back pressure.
  The following resources are in the normal state:
  Version buckets = 0
  Private bytes = 0%
  Physical memory load = 25%
  
  1、   确认问题是否由于磁盘空间引起
  翻阅资料,发现确实是由于队列及队列日志引起的问题,在微软Technet资料中发现如下说明:“为防止数据丢失,存在 Exchange 可能停止接受邮件的情况。如果队列数据库的事务日志与数据库位于不同的驱动器上,则这可能是可用磁盘资源不足导致的,此问题表明驱动器太小。”同时,该文中指出解决方案:“通过将队列数据库移动到较大的驱动器,解决了该问题。”。
  参考资料:
  http://technet.microsoft.com/zh-cn/library/bb397220.aspx
  https://www.igotitworking.com/problem/view/47/
  2、   更改队列数据库及队列数据库日志文件的位置
  既然找到了问题的原因,接下来就是如何解决问题。在微软Technet资料中对“如何更改队列数据库的位置”进行了详细配置。可以通过脚本(Move-TransportDatabase.ps1)或手动方式移动队列数据库及队列事务日志文件。具体有新建和复用两种方式,我使用了手动复用的方式:
  1) 更改队列数据库的位置,并复用现有的队列数据库
  A.   创建用于保存队列数据库的目录。确保向该目录应用适当的权限。
  B.   使用记事本打开以下文件:
  C:\Program Files\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config。
  C.   修改 <appSettings> 部分中的以下行:
<add key="QueueDatabasePath" value="<LocalPath>" />  例如,若要将位置更改为“D:\Queue\QueueDB”,请按以下方式修改 QueueDatabasePath 参数:
<add key="QueueDatabasePath" value="D:\Queue\QueueDB" />  D.   保存并关闭 EdgeTransport.exe.config 文件。
  E.   停止 Microsoft Exchange 传输服务。
  F.   将文件 Mail.que 和 Trn.chk 从原始位置复制到新位置。
  G.   启动 Microsoft Exchange 传输服务。
  H.   从原始位置删除不使用的文件 Mail.que 和 Trn.chk。
  2) 更改队列事务日志的位置,并复用现有的队列事务日志
  A.   创建用于保存队列数据库事务日志的目录。确保向该目录应用适当的权限。
  B.    使用记事本打开以下文件:
  C:\Program Files\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config。
  C.   修改 <appSettings> 部分中的以下行:
<add key="QueueDatabaseLoggingPath" value="<LocalPath>" />  例如,若要将位置更改为“D:\Queue\QueueLogs”,请按以下方式修改 QueueDatabaseLoggingPath 参数:
<add key="QueueDatabaseLoggingPath" value="D:\Queue\QueueLogs" />  D.   保存并关闭 EdgeTransport.exe.config 文件。
  E.   停止 Microsoft Exchange 传输服务。
  F.   将现有文件 Trn.log、Trntmp.log、Trnnnnn.log、Trnres00001.jrs、Trnres00002.jrs 和 Temp.edb 复制到新位置。
  G.   启动 Microsoft Exchange 传输服务。
  H.   从原始位置删除不使用的文件 Trn.log、Trntmp.log、Trnnnnn.log、Trnres00001.jrs、Trnres00002.jrs 和 Temp.edb。
  参考资料:
  http://technet.microsoft.com/zh-cn/library/bb125177.aspx
   http://blog.chinaunix.net/u/14456/showart_2045536.html
页: [1]
查看完整版本: Exchange 2007 队列数据库、队列事务日志文件超过临界值(阈值)导致无法接受邮件解决方案