大家好,想请教一个exchange的问题,队列数据库mail.que这个文件可以用什么工具打开并编辑?
情况是这样,我的Exchange server 2007 sp2由于mail.que文件过大,达到10G,导致反压,不能收发邮件了,所以我停止exchange传输服务后,将data下的IpFilter、Queue、Temp移动到其他目录,然后再开启exchange传输服务,让系统重新生成队列数据库,重新生成后,收发邮件一切正常。
然后我再使用eseutil工具对移走的mail.que进行检查,先使用/MH,发现是属于Dirty Shutdown,然后使用/p,对数据库进行修复,修复后再使用/MH查看,数据库已变成Clean Shutdown,最后使用/D进行数据库整理,结果出现报错,无法整理数据库,使用/G检查文件完整性,提示mail.que已经损坏,报错日志如下:
事件类型: 错误
事件来源: ESE
事件种类: 数据库损坏
事件 ID: 448
日期: 2015-5-22
事件: 17:14:11
用户: N/A
计算机: premail
描述:
eseutil (6940) 在数据库 D:\Exchange Server\TransportRoles\data\Queue.bak\mail.que (21882,3789744)的表 MailRecipTable 中检测到数据不一致。
事件类型: 警告
事件来源: ESE
事件种类: 性能
事件 ID: 628
日期: 2015-5-22
事件: 17:14:08
用户: N/A
计算机: premail
描述:
eseutil (6940) 数据库“D:\Exchange Server\TransportRoles\data\Queue.bak\mail.que”: 试图移到 B 树中 的下一个或上一个节点时,数据库引擎跳过 了 9 页中的 7 个不可见节点。这些不可见的 节点很可能是已标记为删除但还没有清 除的节点。数据库可能需要在非工作高峰时 间内扩大联机维护时间范围,以便清除这样 的节点,并收回它们的空间。如果此消息再次 出现,可以运行脱机碎片整理,删除已标记为 删除但还没有从数据库中清除的节点。
名称: <LV>
所属表: MailRecipTable
ObjectId: 9
PgnoRoot: 12650
类型: 7
非版本控制删除: 7
未提交的删除: 0
已提交的删除: 0
不可见的插入: 0
出现这种情况,还有可能将老队列数据库里的邮件取回吗?里面有重要邮件。
我尝试过使用/R,但没有作用,因为“Log Required”和“Log Committed”都是空值。
File Type: Database
Format ulMagic: 0x89abcdef
Engine ulMagic: 0x89abcdef
Format ulVersion: 0x620,12
Engine ulVersion: 0x620,12
Created ulVersion: 0x620,12
DB Signature: Create time:05/22/2015 17:11:27 Rand:173173474 Computer:
cbDbPage: 8192
dbtime: 1337234372 (0x4fb493c4)
State: Clean Shutdown
Log Required: 0-0 (0x0-0x0)
Log Committed: 0-0 (0x0-0x0)
Streaming File: No
Shadowed: Yes
Last Objid: 13
Scrub Dbtime: 0 (0x0)
Scrub Date: 00/00/1900 00:00:00
Repair Count: 10
Repair Date: 05/22/2015 17:11:27
Old Repair Count: 0
Last Consistent: (0x0,0,0) 05/22/2015 17:12:11
Last Attach: (0x0,0,0) 05/22/2015 17:11:27
技术无止境