移动数据库文件之前验证一致性
上一次修改主题: 2005-05-23
如果没有从联机备份进行还原,则在将数据库文件(.edb 和 .stm)移动到其他存储组之前,这些文件必须处于“干净关闭”状态。
可以通过使用 Exchange Server 数据库实用程序 (Eseutil.exe) 工具,并使用 Eseutil /mh [database filename].edb 命令检查每个文件,了解数据库是否已干净关闭。在 Exchange 2000 Service Pack 1 及更高版本中,此命令输出的某一行将显示“状态:干净关闭”或“状态:异常关闭”。在此 Exchange 版本之前,相同的状态被报告为“状态:一致”或“状态:不一致”。
对 .edb 和 .stm 文件运行 Eseutil.exe 以验证关闭状态。下面是 Eseutil /mh 的输出示例(突出显示重要行):
Microsoft(R) Exchange Server Database Utilities
Version 6.5
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating FILE DUMP mode...
Database: priv1.edb
File Type: Database
Format ulMagic: 0x89abcdef
Engine ulMagic: 0x89abcdef
Format ulVersion: 0x620,9
Engine ulVersion: 0x620,9
Created ulVersion: 0x620,9
cbDbPage: 4096
dbtime: 20887 (0-20887)
Log Required: 0-0
Streaming File: Yes
Shadowed: Yes
Last Objid: 127
Scrub Dbtime: 0 (0-0)
Scrub Date: 00/00/1900 00:00:00
Repair Count: 0
Repair Date: 00/00/1900 00:00:00
Microsoft(R) Exchange Server Database Utilities
Version 6.5
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating FILE DUMP mode...
Database: priv1.stm
File Type: Streaming File
Format ulMagic: 0x89abcdef
Engine ulMagic: 0x89abcdef
Format ulVersion: 0x620,9
Engine ulVersion: 0x620,9
Created ulVersion: 0x620,9
cbDbPage: 4096
dbtime: 0 (0-0)
Log Required: 0-0
Shadowed: Yes
Last Objid: 0
Scrub Dbtime: 0 (0-0)
Scrub Date: 00/00/1900 00:00:00
Repair Count: 0
Repair Date: 00/00/1900 00:00:00
若要完全确保 .edb 和 .stm 文件是一组匹配文件,也可以比较 Eseutil.exe 输出的 DB Signature 和 Last Consistent 行。DB Signature 是标识特定数据库的唯一值。如果 .edb 和 .stm 文件的值不同,则无论是否处于关闭状态这些文件都不匹配。
Last Consistent 行将验证文件最后是否同时关闭。Last Consistent 的时间戳不必匹配,但是圆括号中的数字应该完全匹配。这些数字表示关闭时使用的当前事务日志文件(在本示例中,数据库处于事务日志 3),以及日志文件已填充部分的大小(在本示例中,日志文件的 0x46 扇区和该扇区的 0xDC 字节发生了关闭)。