EXCHANGE2003个人笔记
2011年05月17日
Exchange 2003 Exchange与活动目录的对应关系
Exchange组织----------活动目录的森林
Exchange管理组-------活动目录的域
Exchange路由组-------活动目录的站点
Exchange2003的前后端服务器
前端服务器可以做一个NLB的负载均衡,后端服务器可以做Cluster。
如何确认Schema扩展成功
首先是Schema的扩展,Schema的扩展最好是在Schema Owner上执行,利用Netdom query fsmo命令查出Schema owner是谁。Schema扩展其实是把安装光盘上的Schema0.ldf~Schema9.ldf文件里的内容来扩展到活动目录,要想确认Exchange 的Schema是否扩展成功我们可以打开Schema9.ldf文件,找到最后一行查看它的属性值,然后到Schema owner上用adsiedit.msc去查看Schema里面是否和它的一致。
图一:
图二:
图三:
图四:
在外部实现RPC Over HTTP步骤
1、 在Exchange上安装Rpc Over Http代理组件并保证Exchange打上Service pack 1。
2、 安装证书服务,并在Exchange Server和ISA Server上申请好证书来和客户端实现SSL通讯,Exchange、ISA和需要通过Rpc Over Http访问的客户端都需要信任证书颁发机构,这需要在它们计算机上安装证书信任。
3、 在Exchange上的IIS上申请一个Web服务器证书,然后配置Rpc虚拟目录的目录安全性,在身份验证和访问控制里面把若名访问和集成身份验证去掉,只保留基本身份验证,在安全通信里面选择要求SSL通讯。
4、 Exchange上编辑注册表HKEY_LOCAL_MACHINE"Software"Microsoft"Rpc"RpcProxy下的ValidPorts的值。把6001、6002、6004端口指向Exchange自己的,它的格式是:GZ:6001;GZ.Nwtraders.msft:6001;GZ:6002;GZ.Nwtrader s.msft:6002;GZ:6004;GZ.Nwtraders.msft:6004 ,做完这些操作后最好重起一下Exchange。如果是前后端服务器,上面所配置的端口需要指向后端服务器,不过打了SP1以后电脑会自动配置。
5、 HKEY_LOCAL_MACHINE"SYSTEM"CurrentControlSet"Servic es"NTDS"Parameters在GC上的这个注册表位置下增加一多字符串值名字为NSPI interface protocol sequences,它的键值为ncacn_http:6004,配置好以后最好也重起一下GC。
6、 在ISA 服务器上配置一个安全的WEB发布,把Exchange服务器上的Rpc虚拟目录发布出去,发布的名称要与ISA上申请的证书名称一样,而转发到Exchange上的名称要与Exchange上IIS申请的证书名称一样。
7、 最后是配置OutLook2003使用Rpc Over Http去访问Exchange服务器,不过要确保客户端能解析ISA发布的名称,也就是ISA申请的证书名称。
8、 如果是前后端的架构,要先在后端服务器上启用RPC Over Http后端服务器设置,再启用前端服务器的RPC Over Http前端服务器设置。
Exchange2003中的OWA支持附件传送限制
可以限制OWA 2003的使用者传送附件
HKEY_LOCAL_MACHINE"SYSTEM"CurrentControlSet"Servic es"MSExchangeWEB"OWA
新增一个键值:DisableAttachments
键值内容为DWORD:0 允许所有附件
键值内容为DWORD:1 不允许所有附件
键值内容为DWORD:2 则直接连接Back_Server时,允许访问附件
如何增加或删除M盘:
Subst X: ""."BackOfficeStorage (注释:把Exchange Store映射到X盘)
Subst /d X: (注释:删除对X盘的映射)
不要让文件系统级别的防病毒软件去扫描M盘,要把M盘和日志文件、数据库文件等排除在外(如:C:"Program Files"Exchsrvr)把Exchsrvr排除,因为它可以由邮件防毒软件去扫描。
如何显示组织属性页中的安全页
先编辑注册表增加一个键值:ShowSecurityPage值为1
然后就可以在组织属性里面出现安全页了!
如何对数据库进行离线整理
首先卸除MailBox Store,然后找到数据为路径,对数据库进行整理,下面命令是对priv1.edb数据读取,然后产生一个新的数据库new.edb,这个新的数据库是经过整理的,然后把新的数据库改名为原有数据库名后再到Exchange System Manager里面去重新装入它,然后对新数据库进行全备份后就可以删除旧数据库文件了!
如何限制用户发送Internet邮件
新建一个SMTP连接器,让出站的Internet邮件通过它发送,在SMTP连接器上限制用户以后,还需要修改注册表:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Servic es/RESvc/Parameters/
1. 在"编辑"菜单上,单击"添加值",然后添加下列注册表值:
Value Name: CheckConnectorRestrictions
Data Type: REG_DWORD
Date: 1
Radix: Decimal
2. 退出注册表编辑器:在"注册表"菜单上,单击"退出"。
3. 启用注册表项设置后,在 Exchange 服务器上重新启动下列服务:
. Microsoft Exchange MTA Stacks (MSExchangeMTA)
. Microsoft Exchange Routing Engine (RESvc)
. Simple Mail Transport Protocol (SMTPSVC) Eseutil.exe命令详解
Eseutil.exe /mk "D:"MDB"E0x.chk"这个命令是查看事务日志检查点文件所指到当前的事务日志已经写入到数据库中的位置。
ESEUtil /mh "C:"..."Exchsrvr"mdbdata"priv1.edb"可以查看数据库的关闭状态
Eseutil.exe /ml
可以查看Log文件的头信息。
Eseutil.exe /p
数据库修复命令,对数据库进行修复。
Eseutil /cc
重播事务日志文件
Eseutil.exe /r
我们也可以针对已经"Dis-mount"的并且是处在"Inconsistent"的数据库手工地进行"Soft Recovery"。
具体的命令是"eseutil /r",后跟数据库文件的路径。(推荐在掉电重启以后执行此命令,可以先运行eseutil /mh确定数据库状态,如果是"Inconsistent",再执行此命令)
Eseutil.exe /g
检查数据库文件edb和stm之间的完整性
如何限制单个用户的OWA功能
利用Outlook Web Access Web 管理工具可以限制全部用户的OWA功能,但如何限制单个用户的OWA功能呢?我们可以用ADSIEDIT去编辑用户的属性修改它的一个键值,如下图我修改了Alice用户的属性的msExchMailboxFolderSet的值为5,这样Alice登录后只能用收件箱和联系人了!这个值怎么算的呢?比如:日历是2,邮件箱是1,联系人是4等,如果只把值为5就是2+3=5,就是邮件箱和联系人相加的值的和来算的。 Outlook Web Access 功能 十进制值 十六进制值 消息传递 1 1 日历 2 2 联系人 4 4 任务 8 8 日记 16 10 粘滞便笺 32 20 公用文件夹 64 40 提醒 128 80 新邮件通知 256 100 丰富客户端 512 200 拼写检查器 1024 400 S/MIME 2048 800 搜索文件夹 4096 1000 签名 8192 2000 规则 16384 4000 主题 32768 8000 垃圾邮件 65536 10000 所有功能 4294967295 FFFFFFFF 下表说明了几个可用来启用特定 Outlook Web Access 功能的示例项。本表列出的 9 个设置不代表可以创建的功能组合的总数。在本表中,示例 1 和示例 2 启用 Outlook Web Access 中的同一功能。
每服务器分段或每用户分段示例值 Outlook Web Access 功能 启用功能的十进制值 示例 1 示例 2 示例 3 示例 4 示例 5 示例 6 示例 7 示例 8 示例 9 启用功能的十六进制值 消息传递 1 开 开 开 开 开 开 开 开 1 日历 2 开 开 开 开 开 开 开 2 联系人 4 开 开 开 开 开 开 开 4 任务 8 开 开 开 开 开 开 开 8 日记 16 开 开 开 开 开 开 开 10 粘滞便笺 32 开 开 开 开 开 开 开 20 公用文件夹 64 开 开 开 开 开 开 开 40 提醒 128 开 开 开 开 开 开 开 80 新邮件通知 256 开 开 开 开 开 开 开 开 100 丰富客户端 512 开 开 开 开 开 开 开 200 拼写检查器 1024 开 开 开 开 开 400 S/MIME 2048 开 开 开 开 开 800 搜索文件夹 4096 开 开 开 开 开 1000 签名 8192 开 开 开 开 开 2000 规则 16384 开 开 开 开 开 4000 主题 32768 开 开 开 开 8000 垃圾邮件 65536 开 开 开 开 10000 所有功能 4294967295 开 FFFFFFFF 合计 131071 4294967295 1023 130937 66047 131007 967 65535 32767 注意:
l "合计"行中的值是必须在"DefaultMailboxFolderSet"注册表项或"msExchMailboxFolderSet"用户属性中输入的、用来启用 Outlook Web Access 功能特定集合的值。
l 即使没有明确启用消息传递功能,该功能也始终是启用的。
l 某些 Outlook Web Access 功能(如提醒功能和新邮件通知功能)依赖于其他功能。另外,某些功能需要启用 Outlook Web Access 富用户界面。
Dsadiag.exe命令的使用
这个命令可以模拟通过Exchange网卡上设定的DNS服务器去查找DC的过程,它能列出可用的DC并告知哪些DC是比较近的,哪些DC是比较远的。要拷贝到C:"Program Files"Exchsrvr"bin目录下才能使用.
下载地址:http://www.somorita.com/Downloads/DSADiag.zip
PageDefrag工具的使用
我们知道当Windows系统使用时间长了以后会对系统和注册表增加很多碎片,如果用Windows系统自带的碎片整理工具只能整理文件系统碎片,而系统文件和注册表的碎片是被操作系统锁住的而无法整理,我们可以用这个工具在Windows启动以前进行碎片整理来提高系统性能。
移动设备的支持
Exchange支持两种移动访问方式ActiveSync和OMA:
ActiveSync可以通过GPRS或者CDMA直接访问Exchange服务器,也可以让Pocket PC通过红外或者蓝牙连到笔记本电脑、台式电脑并通过它们的网络去访问Exchange服务器,还可以同步这些电脑上的Outlook信息。(注:笔记本电脑或者台式电脑上装有ActiveSync连接器来与Pocket PC连接)
OMA则是你的手机不支持ActiveSync的话,可以通过手机上的浏览器去访问Exchange上的邮件。
如何使IMF保存SCL值
要使IMF自动保存SCL值,请修改如下注册表:
HKEY_LOCAL_MACHINE"Software"Microsoft"Exchange"Con tentFilter
增加一个DWord的键叫"ArchiveSCL"值为"1".
如何启用 Tar Pit 功能?
注意:如果 TarpitTime 注册表项不存在,则 Exchange 的行为如同此注册表项的值设置为 0。当注册表项的值为 0 时,在发送 SMTP 地址验证响应时将没有延迟。
找到下面的注册表子项,然后单击将其选中:
HKEY_LOCAL_MACHINE"SYSTEM"CurrentControlSet"Servic es"SMTPSVC"Parameters
在"编辑"菜单上,指向"新建",然后单击"DWORD 值", 键入 TarpitTime 作为注册表项名称,然后按 Enter 键。在"编辑"菜单上,单击"修改", 单击"十进制"。在"数值数据"框中,键入要对每个不存在的地址延迟 SMTP 地址验证响应的秒数。然后,单击"确定"。例如,键入 5,然后单击"确定"。这会将 SMTP 地址验证响应延迟 5 秒,重新启动简单邮件传输协议 (SMTP) 服务。
Exchange筛选垃圾邮件执行顺序
一、Telnet mail.contoso.msft 25
1、连接控制
二、EHLO domain.com
三、Mail From:Alice@Nwtraders.msft
1、 全局接受列表
2、 全局拒绝列表
3、 发件人筛选
四、Rcpt To:Jeffery@Contoso.msft
1、 RBL特例收件人
2、 收件人筛选
3、 RBL过滤
4、 过滤不存在的收件人
五、Data .
1、 检查From字段(P2)满足发件人过滤
2、 智能邮件过滤器网关阀值
六、用户自定义的邮件内容分检
一封邮件所包含的语义信息
l 从哪儿来?(Connection based on IP)
l 谁发来的?(Sender) l 发给谁?(Recipient)
l 谈论什么?(Content)
Exchange针对邮件的语义信息提供抵御垃圾邮件的特性.
在安装SP2和没有安装SP2的Exchange2003邮件流
Sender ID(SPF记录)
如果一封邮件声称它是从aol.com域发送过来的,那么我们可以查看它邮件头中的IP地址,然后通过nslookup去查询这个域的SPF记录,看是否有它的IP地址。
如Microsoft.com,下图中说明Microsoft.com的邮件都是通过_spf-a.microsoft.com和_spf-b.microsoft.com这两个域来发送的,然后再查询_spf-a.microsoft.com的SPF记录,可以看到其包含的合法IP,以及可以用这些IP来发送邮件的A记当和MX记录。例如:a:delivery.pens.microsoft.com,mx:Microsoft.com
Sender ID 测试结果
注:查询SPF记录到最后得到的结果,就是-all、+all、?all、~all的含意。 Sender ID 测试结果 描述 后续处理动作 可疑(?) 不对未在记录中声明的IP进行判断 标记并继续 通过(+) 所有未在记录中声明的IP被认为是合法的 标记并继续 失败(-) 所有未在记录中声明的IP被认为是非法的 标记并继续
or
拒绝
or
删除 软失败(~) 所有未在记录中声明的IP被认为是非法的,但是在目前是可以接受的 标记并继续 None 邮件域没有SPF记录 标记并继续 TempError 无法联系DNS或网络失败 标记并继续 PermError SPF记录格式不正确 标记并继续 建立SPF记录
在DNS服务器的区域中建立一条TXT记录,新建-其它新记录-TXT记录
Exchange 2003的五点忠告
1、 永远不要手工的删除日志文件。
2、 如果没有必要,不要开启循环日志。
3、 日志和其对应的SG数据库分开存放在不同的物理阵列上。
4、 不要让防病毒软件扫描数据库文件和日志文件。
5、 定期做全备份。
SMTP中的四种事件和相应的Event Sink
SMTP protocol events
对SMTP命令字做出更改和扩展,改变SMTP的响应方式
SMTP store events
建立与Exchange数据库的关联,实现向数据库投递邮件
SMTP transport events
进行邮件分类和路由
SMTP system events
实现日志记录
高级队列引擎AQE
AQE,Exchange上的所有邮件都必须经过这个组件
AQE负责触发的事件
AQE所管理的队列
邮件传递原理
SMTP transport events
进行邮件分类和路由
OnSubmission:提交
OnPreCategorize:分检之前
OnCategorize:执行分检
OnPostCategorize:分检完成之后
Exchange 2003 备份
备份:
系统状态备份+数据库备份
恢复:
一、数据库恢复
1、 如果只是恢复单个用户的几封邮件,可以利用恢复存储组来恢复。
2、 如果是数据库损坏,在有备份的情况下最好用备份恢复,没有备份的话可以用Eseutil.exe /p来修复损坏的数据库,但这样修复好的数据库可能会丢失一些数据。
3、 Exchange在做备份恢复的时候,需要先把数据库Dismount(卸载)下来,然后在它属性数据库选项中把(还原时可以覆盖此数据)的勾选上,如果备份时把PublicFolder(公共文件夹)也备份了,还原时也需要把它Dismount(卸载)和勾上(还原时可以覆盖此数据).
此时打开NTBackup备份还原工具,进行还原。因为Exchange数据库进行还原时会自动对备份后产生的日志文件进回滚写入(这个可以通过还原时是否选中"上次还原集"这个选项来控制的),如果此时备份后的事务日志文件丢失的话,恢复后的数据库是Mount(装载)不起来的,它的数据库此时会处在Dirty Shutdown(不一致)的状态,可以通过Eseutil.exe /p进行修复后来装载它.
正常时数据库的状态是处在Clean Shutdown的.(Log Required表示备份后需要回滚的事务日志文件)
可以看到数据库处在Dirty Shutdown(不一致)的状态,(Log Required:4-4表示恢复后需要从E0000004.log这个事务日志开始回滚写入.
正在对数据库进行修复.
二、服务器重建
1、 在活动目录中把原有的Exchange服务器的计算帐号删除。
2、 重新安装操作系统,计算名要与原来的删除的Exchange服务器计算机名一样,并且加入到域中。
3、 安装IIS组件并且更新补丁和原来服务器一样。
4、 恢复以前备份的系统状态(system state)
5、 以恢复安装模式重新安装Exchange,安装参数Setup /disasterrecovery。
6、 恢复以前备份的数据库。
如何执行脱机备份
首先需要把Information Store服务停止,然后把priv1.edb和priv1.stm文件复制出来就可以了。
Exchange数据库恢复过程
将备份中的数据库文件替代原有edb和stm文件
将备份中的日志文件复制到临时文件夹
创建Restore.env文件
检查所有日志文件的签名以确定是否和该数据库匹配
将恢复的日志应用到数据库
将数据库所属存储组下的活动日志文件应用到数据库
Mount Exchange数据库 尝试修复 Exchange 数据库只是最后的手段,因为这样的尝试可能导致数据丢失。
可以通过使用 Eseutil.exe 和 Isinteg.exe 来修复 Exchange 数据库文件(.edb 文件),还可以使用恢复存储组从已损坏的数据库中抢救数据。有关使用恢复存储组的信息,请参阅"Using Exchange Server 2003 Recovery Storage Groups"(http://go.microsoft.com/fwlink/?LinkId=23233)(英文)。 默认情况下,在 Exchange 安装过程中,会在 .."exchsrvr"bin 目录中安装某些工具(例如,Eseutil 和 Isinteg)。若要在服务器上全局运行这些工具(从任何命令提示符),请将完整路径 .."exchsrvr"bin 添加到 Windows Server 2003 系统路径。
将 .."exchsrvr"bin 目录添加到 Windows Server 2003 系统路径
4. 打开"系统属性"。若要打开"系统属性",请单击"开始",用鼠标右键单击"我的电脑",再单击"属性"。
5. 单击"高级"选项卡。
6. 单击"环境变量"按钮。
7. 在"系统变量"框中,向下滚动到变量"Path"(图 3.5)。
图 3.5 编辑 Path 环境变量
8. 单击"Path"选择它,再单击"编辑"。
9. 在"变量值"框中,在字符串末尾添加分号 (;)。
10. 在分号之后(无空格)键入完整路径 .."Exchsrvr"bin。
11. 在路径变量的末尾添加分号。
默认路径是 C:"Program Files"exchsrvr"bin(图 3.6)。
图 3.6 编辑 Path 变量
12. 单击"确定"关闭"编辑系统变量",单击"确定"关闭"环境变量",再单击"确定"关闭"系统属性"。
13. 关闭任何已打开的命令行。
14. 打开新命令行。单击"开始",再单击"运行",键入cmd,然后单击"确定"。
15. 现在应当能够在服务器上的任何命令提示符下运行 Eseutil 和 Isinteg,以及保留在 .."Exchsrvr"bin 目录中的其他任何工具。 此部分包含使用 Eseutil 或 Isinteg 来修复 Exchange 数据库时应当了解的常规信息。
有关使用 Eseutil 或 Isinteg 的详细信息,请参阅 Microsoft 知识库文章 812357"XADM: Maintain Your Exchange Database After You Repair By Using the Eseutil /p Tool"(http://go.microsoft.com/fwlink/?LinkId=3052&kbid=8 12357)(英文)和 182081"Description of the Isinteg utility"(http://go.microsoft.com/fwlink/?LinkId=3052&kbid=1 82081)(英文)。修复 Exchange数据库时,请考虑以下信息:
. 使用 Eseutil 和 Isinteg 修复 Exchange 数据库会导致所修复的 Exchange 数据库丢失数据。因此,在试图执行修复过程之前,请先复制要修复的数据库文件。(有关如何复制数据库文件的信息,请参阅本章后面的"移动或复制正在还原的数据库文件的现有版本(可选)"。)由于无法撤消在修复过程中对数据库的更改,因此仅使用 Eseutil 和 Isinteg 作为最后手段。前面已经讨论过,建议通过还原备份集而不是修复数据库来恢复损坏的数据库。
. 如果使用 Eseutil 修复 Exchange 数据库,必须有足够的可用磁盘空间来运行 Eseutil。如果要运行 Eseutil /P,必须在相同驱动器上拥有所修复的数据库大小的大约 20% 的可用空间。如果没有这么多空间,可以使用命令行开关将临时文件重定向到其他位置。如果要使用 Eseutil /D,必须有数据库大小的 110% 的空间。虽然可以像使用 /P 开关一样将临时文件重定向到另一个驱动器,但这将大幅度增加修复数据库所需的时间。如果可能,使用 /D 开关时要有充足的可用空间。
. 使用 Eseutil 和 Isinteg 工具修复数据库文件要占用相当长的时间。通常,修复数据库比从备份还原数据库占用的时间更长。
. 如果两个工具都成功运行(例如,如果最后一次运行 Isinteg 结束时没有任何错误),则通常认为数据库已修复,并且已做好替换已损坏的数据库的准备。
如果计划将修复后的数据库放回生产环境中,必须执行下列步骤:
a. 运行 Eseutil /P。
b. Eseutil /P 成功完成之后,运行 Eseutil /D。
c. Eseutil /D 成功完成之后,运行 Isinteg fix test alltests。
(注:完整命令格式:isinteg -s servername -fix -test alltests)
注意:servername不能用FQDN,而是用hostname;
如果只是计划从磁盘抢救数据,而没有计划将它放回生产环境中,可以跳过此部分前面的步骤 b。跳过步骤 b 将节约恢复过程中所需的时间,但可能导致数据库出现索引和空间分配错误。这些错误不是您希望在生产环境中发生的错误,但它们不可能影响从数据库抢救数据的能力。
. 如果 Eseutil 和 Isinteg 无法修复数据库中的每个错误,最好不要放弃被修复的数据库。Isinteg 完成之后,应当报告数据库中有零个错误。如果错误计数大于零,请再次运行 Isinteg 直到计数变为零,或在后续运行中计数不再减少。如果无法让错误计数归零,请不要将数据库放到生产环境中。请通过将文件夹合并或复制到新的数据库,或通过将邮箱移动到新的数据库,抢救数据库中的数据。
. 可以使用另一个服务器从已损坏的数据库还原数据。例如,可以将损坏的数据库还原到另一个服务器,然后使用 Exmerge 工具从该数据库中提取数据,再将数据插入到新的数据库文件中。还可以在相同服务器上使用恢复存储组,从损坏的数据库中还原数据。有关恢复存储组的详细信息,请参阅"Using Exchange Server 2003 Recovery Storage Groups"(http://go.microsoft.com/fwlink/?LinkId=23233)(英文)。 默认情况下,安装 Exchange 时,Eseutil 和 Isinteg 都安装到 "Program Files"Exchsrvr"bin 目录中。 Exchange 还原过程
恢复 Exchange 数据库
一、卸除正在还原的每个邮箱或公用文件夹存储的数据库。
二、将数据库配置为可以使用还原进行覆盖(可选)。
三、确定正在还原文件的数据库和日志文件位置(可选)。
四、将当前数据库文件复制到另一个位置(可选)。
五、确保在 Exchange 系统管理器中的邮箱和公用文件夹存储名称与备份媒体匹配。
六、确保 Microsoft Exchange 信息存储服务 (MSExchangeIS) 正在运行。
七、选择要从备份媒体还原的备份文件。
八、还原所选文件。
九、确保还原过程已成功。
十、重播事务日志文件 (Eseutil /cc)(可选)。
十一、 装入数据库(存储)。
卸除正在还原的 Exchange 数据库
执行还原过程之前,必须卸除想要还原的 Exchange 数据库。如果尝试还原的数据库仍然被装入,则还原过程将失败。
图 3.17 卸除邮箱存储
配置 Exchange 数据库供还原过程覆盖(可选)
若要确保还原过程覆盖 Exchange 数据库,必须配置要还原的数据库。但是,如果要将它们还原到其原始位置,或使用恢复存储组,则不必配置数据库。只有当所还原的数据库在 Active Directory 中有不同的 GUID 时,才必须进行配置。例如,在将数据库还原到另一个目录林(例如,测试目录林)时,将需要不同的 GUID。如果数据库的 Active Directory 对象已删除,也会需要不同的 GUID。在 Active Directory 中重新创建已删除的对象时,将为每个对象赋予新的 GUID。
除非您知道必须覆盖数据库,否则不要使用该选项。
图 3.18 邮箱存储的属性
在"数据库"选项卡上,选中"还原时可以覆盖此数据库"复选框(图 3.19)。
图 3.19 使数据库能够在还原期间被覆盖
确定正在还原文件的数据库和日志文件位置(可选)
如果计划制作已损坏的数据库的副本,以便今后需要时可以尝试修复该数据库,则需要确定数据库和日志文件的位置,以便可以移动或复制它们。
图 3.20 存储组属性
在"常规"选项卡上,记录"事务日志位置"和"系统路径位置"框中的路径,再单击"确定"(图 3.21)。记录每个包含想要移动或复制的数据库的存储组的这些路径。
事务日志位置是为整个存储组写入的日志文件的路径。这些日志文件用于记录对该存储组中的数据库所做的每个更改。系统路径位置是保存对存储组来说很关键的其他文件(如存储组的检查点文件)的地方。
图 3.21 日志文件位置和系统路径位置
在Exchange 系统管理器中,用鼠标右键单击想要移动或复制的数据库,再单击"属性"。
在"数据库"选项卡上,记录 Exchange 数据库文件和 Exchange 流式数据库文件的路径,然后关闭对话框(图 3.22)。
图 3.22 Exchange 数据库文件位置
移动或复制正在还原的数据库文件的现有版本(可选)
在现有数据库文件被还原覆盖之前,可以保留这些数据库文件,以防还原过程不成功。保留已损坏的数据库文件的副本为使用其他恢复选项提供了可能性。例如,如果还原不成功,则这些文件的副本可以帮助您回复到可能可以修复的原始版本。
1、 确保正在移动或复制的数据库已被卸除。有关如何卸除数据库的详细信息,请参阅本章前面的"卸除正在还原的 Exchange 数据库"。
2、 确保正在复制的数据库已在干净状态中关闭。使用 Eseutil /mh 转储数据库的头信息。在转储信息中查找State: Clean Shutdown。
如果数据库处于不干净状态,请在修复之前尝试将数据库还原到干净状态。该任务还必须将任何需要的事务日志播放到数据库中。通过 Eseutil/mh 所得到的转储文件中的"Log Required"字段将显示把数据库还原到干净状态所需的日志。显示在该字段中的日志以十进制显示,必须将该值转换成十六进制,才能查找相应的事务日志文件。
很多情况下,重新装入数据库会导致软恢复启动,以便数据库可以在干净状态中关闭。
3、 创建一个文件夹,用于存储想要移动或复制的数据库文件。可以在本地硬盘或网络上创建该文件夹。开始复制过程之前,确保目标位置有足够的空间。记住,将文件移动到同一个逻辑驱动器上的另一个位置是保留被损坏的数据库的最快方式。
图 3.23 执行还原过程之前复制数据库文件
确保存储组和数据库显示名称与正在还原的文件的名称匹配
从备份媒体还原的存储组和数据库(邮箱存储或公用文件夹存储)的名称必须与存储组和数据库的名称匹配,因为它们作为对象存在于还原它们的目标服务器的 Active Directory 中。如果 Exchange 系统管理器正运行在组织内的任何 Exchange 服务器上,它将从 Active Directory 中读取该数据并显示它,以便当它们出现在备份中时可以对照存储组和数据库的名称对数据进行验证。如果名称不匹配,还原过程将失败。
例如,如果在尝试还原存储组及其数据库之前删除了它们,则存储组和数据库将不会存在于该服务器的 Active Directory 中,并且您必须用与备份媒体上的存储组和数据库名称完全匹配的名称来重新创建存储组和数据库。
在控制台树和详细信息窗格中,记录存储组和数据库的名称。将这些名称与备份媒体上的存储组和数据库名称进行比较。Exchange 系统管理器中的名称必须与备份媒体上的这些名称匹配,否则还原过程将失败。
解决 Exchange 系统管理器和备份媒体之间的名称不匹配
如果执行本章前面的步骤之后发现名称不匹配,则必须创建与正在从备份还原的存储组和数据库的名称匹配的存储组和数据库。
如果数据库或存储组名称已更改,只需要重命名数据库或存储组。
如果正在设置新的服务器,或数据库或存储组已丢失,则必须创建它们。
重命名存储组或数据库
1、 在 Exchange 系统管理器中,用鼠标右键单击想要重命名的存储组或数据库。
2、 单击"重命名"(图 3.26)。
3、 键入正在还原的数据库或存储组的名称。确保键入的名称与备份媒体上的名称完全匹配,然后按 Enter。
图 3.26 重命名数据库
创建存储组
4、 在 Exchange 系统管理器中,用鼠标右键单击想要在其上创建存储组的服务器。
5、 单击"新建"。
6、 单击"存储组"(图 3.27)。
图 3.27 在 Exchange 系统管理器中创建新的存储组
7、 在"属性"对话框的"常规"选项卡上,键入与出现在备份媒体上的名称完全相同的名称。 8、 单击"确定"。
创建邮箱或公用文件夹存储
9、 在 Exchange 系统管理器中,用鼠标右键单击想要在其中创建数据库的存储组。
注意 在用户界面 (UI) 中看见的结构应当与备份媒体上的原始结构完全相同。
10、指向"新建"。
11、单击要还原的数据库的类型(图 3.28)。
图 3.28 在 Exchange 系统管理器中创建新的邮箱存储
12、在"名称"字段中,键入与出现在备份媒体上的名称完全相同的邮箱或公用文件夹存储的名称。
13、单击"确定"。
14、系统提示您是否装入存储,单击"否"。
这时最好不装入存储。装入存储会创建与备份媒体上的日志文件冲突的日志文件,因此,在从备份还原数据库时会干扰日志文件重播。
确保 Microsoft Exchange 信息存储服务 (MSExchangeIS) 正在运行
图 3.29 找到 Microsoft Exchange Information Store 服务 (MSExchangeIS)
选择要从备份媒体还原的备份文件
如果想要还原整个存储组,请选中想要还原的存储组旁边的复选框。如果想只还原存储组中的一个数据库,请只选中想要还原的数据库旁边的复选框。
注意 在"备份"中选中或清除"日志文件"复选框不会影响还原过程。Exchange 会基于正在还原的备份的类型自动检测是否要还原日志文件。
图 3.30 选择想要还原的存储组或数据库
还原所选文件
如果正在还原差异和增量备份,请确保按时间顺序还原备份。始终首先还原正常备份,然后按时间顺序还原任何增量或差异备份。如果不按顺序还原备份集,可能不会重播某些事务日志。
还原所选文件
1、 在"将文件还原到"列表中,选择还原文件的目标位置。默认情况下,指定的位置是"原位置"。
2、 单击"开始还原"。
3、 在"还原到"框中,指定要将数据库还原到其上的 Exchange 服务器(图 3.31)。
图 3.31 "正在还原数据库存储"对话框
4、 在"日志及修补文件的临时位置"框中,指定在还原过程中用于存储日志文件的目录。
5、 若要执行还原,在存储文件的目录中必须有足够的空间。要求的磁盘空间大约比正在还原的事务日志文件的大小多出 10MB。
要点 在"日志及修补文件的临时位置"框中指定的目录不得包含原始数据库或日志文件,否则还原可能失败。
建议为该过程创建一个空的临时文件夹。因为系统针对每个存储组而不是每个数据库写入事务日志,所以使用临时文件夹将确保事务日志的重播被隔绝开来,不会在恢复期间干扰存储组中仍在运行的、未损坏的数据库。
6、 只有当这是在重新装入数据库之前必须还原的最后一个备份集,才选中"上次还原集"复选框。
7、 如果正在还原的备份是一系列正常、差异或增量备份的一部分,请让该复选框保持清除状态,直到还原系列中最后一个增量或差异备份。如果不选中该框,还原过程不会启动硬恢复以便向正在还原的数据库播放日志文件。
8、 如果在还原最后一个备份集时不选中该复选框,则可以使用 Eseutil 手动重播事务日志。有关该过程的循序渐进的解释,请参阅本章后面的"使用 Eseutil /CC 重播事务日志文件(可选)"。
9、 有关硬恢复和事务日志重播的详细信息,请参阅 Microsoft 知识库文章 232938"The 'Last Backup Set' Check Box and Hard Recovery in Exchange"(http://go.microsoft.com/fwlink/?LinkId=3052&kbid=2 32938)(英文)。
10、如果这是计划还原的最后一个备份集,则只选中"还原后装上数据库"复选框,并且要肯定已做好装入数据库的准备。建议不选中该复选框。
11、做好启动还原过程的准备时,请单击"确定"。
如果"备份"提示您输入要在还原中使用的备份文件的位置,请选择正确的备份名称,再单击"确定"。
使用 Eseutil /CC 重播事务日志文件(可选)
从备份媒体还原数据库时,它处于所谓的不一致状态中,在该状态中数据库和日志文件没有一起同步。若要在还原数据库之后完全恢复 Exchange 数据,必须重播事务日志,以使数据库恢复到最新状态,或使它保持一致。
硬恢复是让被还原的数据库返回到一致状态的过程。若要启动硬恢复,可以在还原最后一个数据库时在"备份"中选中"上次还原集"复选框,也可以使用 Eseutil /cc 命令。
若要在任何命令提示符下运行 Eseutil,请执行本章前面的"在服务器上全局运行 Exchange 工具"中的步骤。
建议每次只运行 Eseutil /cc 的一个实例,即使是并发地还原多个数据库。 运行 Eseutil /cc 1、 已还原最后一个备份之后,如果想要启动硬恢复,请打开一个命令提示符窗口:单击"开始",再单击"运行",键入 cmd,然后单击"确定"。
2、 找到 Restore.env 文件所在的文件夹。
3、 键入 eseutil /cc。不要使用任何其他参数。
4、 事务日志成功完成重播时,会显示消息 Operation completed successfully(图 3.32)。
Eseutil 执行与"上次还原集"复选框相同的功能。其他所有Eseutil /cc 开关应当非常谨慎地使用。
图 3.32 使用 Eseutil /cc 重播事务日志
装入数据库(存储)
装入存储是恢复 Exchange 数据库的最后步骤。装入存储之前,请确保硬恢复已完成。若要确保硬恢复完成,请检查 Restore.env 文件是否已删除。只有在硬恢复成功后才会删除 Restore.env。打开指定为日志文件的临时位置的文件夹,再打开正在还原的存储组的文件夹。如果 Restore.env 文件仍然在那里,则硬恢复没有完成。这时,不要尝试装入存储。
注意 如果已使用 /k 开关(用于防止删除 Restore.env (Eseutil /cc /k))执行硬恢复,请使用 Eseutil /mh 来检查数据库头中是否有干净关闭状态。
肯定事务日志重播已完成之后,装入已经恢复的每个存储。
装入数据库失败的解决方法
推荐步骤如下:
1、手动删除所有edb文件
2、在ESM里重新装入(系统会提示你建一个新的空数据库)
3、导入备份数据
4、运行 Eseutil /P
Eseutil /P 成功完成之后,运行 Eseutil /D
Eseutil /D 成功完成之后,运行 isinteg -s servername -fix -test alltests
如果最后一次运行 Isinteg 结束时没有任何错误,则通常认为数据库已修复,并且已做好替换已损坏的数据库的准备.
Exchange的重装方案(一)
在DC正常的情况下,你可以尝试重装Exchange。
一、在DC上用ADSIEDIT.MSC把Exchange的配置信息删除,在configuration-Services-microsoft exchange。
二、在DC上重新运行Forestprep和Domainprep。
三、在DC上把以前旧的Exchange计算机账号删除,重新格式化安装全新的Exchange,计算名和原来一样,组织名和管理组名也要一样(注:不要用Setup /disasterrecovery灾难恢复安装,是全新安装)
四、安装完成后把数据库dismount下来,并允许覆盖,然后把你备份的数据库还原到现在的Exchange(注:一定要保证备份中的存储组名称和要还原的存储组名称一样,store和public folder也一样,Service pack也需要和原来一样)
五、还原后看看还原时指定的临时文件夹中是否有restore.env文件(注:如果有表示日志回滚没成完成,数据库处在不一致状态)如果有需要运行eseutil /p,然后再运行eseutil /d,最后运行isinteg -s servername -fix -test alltests检查并修复数据错误,如果结果没有错误后可以把数据库mount起来,如果mount不起来可以尝试新建一个恢复存储组,把数据库还原到恢复存储组看看能不能mount起来,如果可以把数据合并到用户邮箱中.
六、最后在Exchange服务器上运行ADUC把所有用户以前的Exchange属性删除,然后再到EMS里面运行清理代理把邮箱重新连接以前的用户.
实现服务器群集解决方案
服务器群集通过允许资源的故障转移,为 Exchange 2003 组织提供容错能力。具体地说,使用群集服务的服务器群集保证数据的完整性,并为后端服务器上的关键任务应用程序和服务(包括数据库、邮件系统以及文件和打印服务)提供故障转移支持和高可用性。
图 3.6 说明包含四个节点的群集的示例,其中三个节点是主动节点,一个节点是被动节点。
图 3.6 四节点(3 个主动/1 个被动)群集的示例
站点镜像
站点镜像包括使用同步或异步复制将数据从主站点镜像到一个或多个远程站点(图 3.7) 在站点级别实现容错功能更高级的方法是实现地理位置分散的群集。要使用 Windows Server 2003 部署地理位置分散的群集,请使用虚拟 LAN (VLAN) 连接距离很远的 SAN(图 3.8)。
图 3.8 使用地理位置分散的群集在物理站点之间提供应用程序故障转移功能
表 4.2 Exchange 硬盘分区方案 磁盘 驱动器配置 硬盘 1 驱动器 C (NTFS) -- Windows 操作系统文件和交换文件。 硬盘 2 驱动器 D (NTFS) -- Exchange 文件和其他服务器应用程序(例如,防病毒软件和资源工具包)。 硬盘 3 驱动器 E (NTFS) -- 存储组 1 的事务日志文件。 硬盘 4 驱动器 F (NTFS) -- 存储组 1 的数据库文件。 硬盘 5 驱动器 G (NTFS) -- 存储组 2 的事务日志文件。 硬盘 6 驱动器 H (NTFS) -- 存储组 2 的数据库文件。 图 4.7 使用 6 个磁盘时的容错硬盘设置
Exchange 服务的依赖性层次结构改进
图 5.1 Exchange 2000 中的 Exchange 依赖性层次结构
图 5.2 Exchange 2003 中的 Exchange 依赖性层次结构
5.1 Exchange 2003 群集资源和依存关系 资源 描述 依赖项 系统助理 系统助理是基础资源,它控制 EVS 中的所有资源的创建和删除。 网络名资源和共享磁盘资源 Exchange 存储 为 Exchange 提供邮箱和公用文件夹存储。 系统助理 SMTP 处理电子邮件的中继和传递。 系统助理 IMAP4 使 IMAP4 客户端可以访问电子邮件的可选资源。 系统助理 POP3 使 POP3 客户端可以访问电子邮件的可选资源。 系统助理 HTTP 使客户端(如 Microsoft Office Outlook?? Web Access 2003)可以通过 HTTP 访问 Exchange 邮箱和公用文件夹。 系统助理 Exchange MS 搜索实例 为 EVS 提供内容索引。 系统助理 邮件传输代理 (MTA) 每个群集只能有一个 MTA。MTA 在第一个 EVS 上创建。其他所有 EVS 都依赖于该 MTA。MTA 负责与 X.400 系统通信,并负责与 Exchange 5.5 互操作。 系统助理 路由服务 建立链路状态表。 系统助理 标准仲裁(也称为单一仲裁):使用标准仲裁时,仲裁磁盘资源数据驻留在可供所有群集节点访问的共享物理磁盘资源上。当使用标准仲裁时,由于群集配置数据保留在仲裁磁盘资源上,因此所有群集节点必须都能够与当前拥有该磁盘的节点通信。
多数节点集仲裁:当使用多数节点集仲裁时,仲裁数据存储在每个群集节点的系统磁盘本地。多数节点集资源确保了存储在多数节点集仲裁上的群集配置数据在这些磁盘之间保持一致。
四节点群集的标准仲裁磁盘和多数节点集仲裁
图 5.5 标准仲裁和多数节点集仲裁
四节点 Exchange 群集配置所必需的 IP 地址和其他组件示例
Exchange迁移:
1、将邮箱全部移动到新服务器
2、将新服务器设置为Master
3、将收件人更新服务设置为新服务器(包括域和企业的二个)
4、将脱机地址列表设置为新服务器
5、运行以上二个收件人更新策略,并手工触发DC间的复制
6、在旧服务器上运行卸载EX
7、转移主机角色
8、降级
9、手工清除DNS中的记录等内容;
Exchange访问DC的:
1、DC的configuraiton,通过Ldap389端口(用于如全局设置等信息访问)
2、DC的与用户有关的信息,
3、GC,通过Ldap3268端口访问,访问森林中的信息
注意交换机的设置问题:
邮件服务器网卡、交换机端口及DC网卡都应设置为对应的100M全双工或1000M全双工,否则有可能出现访问问题;
在收件人策略中,在新建SMTP地址的下面,有一项"This Exchange Orgarization is resporaible of mail delivery to thes address"选项,意味着使用上面设置的SMTP地址发信外,还可以接收对应的地址的邮件。如果不选,则该地址只能用于发送,不能用于接收;
在收件人策略中,可以针对不同的类型进行不同的邮件地址的设置。如不同部门有不同的邮件地址,在过滤器中选择不同的应用对象即可。
解决虚拟内存碎片问题:
KB:325044
使用/3GB参数:
KB:291988
KB:266096
KB:328882
在线碎片整理:
KB:271222
要特别注意在线碎片整理时间与备份时间错开,否则在给碎片整理不能正常运行;
离线碎片整理:
当显示碎片空间达到一定比例(10%-15%)时,需要进行离线碎片整理
1、对数据库进行备份
2、Dismount Store
3、使用eseutil /mh确认为数据库一致,为"Clean shutdown"
4、执行以下命令:
C:"program files"exchsrvr"bin"eseutil /d X:"Exchsrvr"Mdbdata"SG1MS1.edb
/tX:"Exchsrvr"Mdbdata"SG1MS1_temp.edb /o /p (7-10G/小时)
在把整理后的数据库文件Mount之前,需要确保其完整性,执行以下命令:
C:"program files"exchsrvr"bin"eseutil /g X:"Exchsrvr"Mdbdata"SG1MS1_temp.edb
/sX:"Exchsrvr"mdbdata"SG1MS1_temp.stm (10G/小时)
关于碎片整理的更多细节,KB:192185
关于数据库损坏:
如果是物理损坏,需要从备份中恢复
如果是逻辑损坏(数据库内容本身没有问题,但一些内部视图,关联发生问题),表现为大部分用户使用正常,但某些用户在点击特定的邮箱文件夹或邮件时,会发生死机现象,对于这种故障,一般可以使用ISINTEG命令来进行修复;
在授权时应该对组授权,而不是对用户,否则当授权用户数量比较大的时候,超出缓存(32K),可能造成与活动目录连接的时断时续等异常现象;
使用挂接点,而不是分配盘符,将LOG盘挂接到对应的数据盘符下,这是在群集里面提出的概念,同时适合于非群集的环境;
Log-----Mount Point to SG Data
SMTP----Mount Point to SG1 Data
Backup-Mount Point to Backup Drive
备份时查看是否在规定的时间内备份完成,如果备份时间过长,需手动中断备份,否则日志超过1024个的时候,将导致数据库离线;
Exchange日常巡查工作列表:
检查事件日志
检查备份日志
检查性能计数器:通过MOM协助
检查磁盘空间
检查Badmail和Queues
检查更新
测试邮件流
备份服务器操作 监控:
制定并记录系统的基准配置和性能
(首先需根据相关文档及测试中制定基准)
监控内容:
Database
MSExchangeIS/Mailbox
Memory
Physical Disk
Process
Processor
每周检查:
检查基准配置是否有偏差(配置是否有改动)
数据恢复测试
ExBPA
每月检查:
ESEutil File Dump
ESEutil Integrity Check
ISInteg All Tests Default Mode
ExBPA
随机抽查:
ESEutil Defrag-12 Months Or After Large Data Move
Full Disaster Recovery Test
ESEUtil:
/d Defragmentation (一般半年左右运行一次)
110%的磁盘空间
注:如果STM文件与EDB文件不在同一位置,可以手动指定,例:
Eseutil /D priv1.edb /Sd:"streaming"priv1.stm
如果本地空间不够,可以通过:
Eseutil /D priv1.edb /T""Server2"d$"defrag.edb /F""Server2"d$"defrag.stm
如果需要自动备份原始的EDB和STM文件:
/B""Server2"d$"priv1.edb
如果不想整理STM文件:
Eseutil /D priv1.edb /l
/g Integrity
问题报告将会保存在.integ.raw文件中
Eseutil /G priv1.edb
(STM文件必须与EDB文件在同一目录)
/m File Dump
可以查看database,checkpoint,transaction log文件的头信息
可以查看指定的数据库页面的头信息
。。。。。。。。
Eseutil /MH{filename.edb|filename.stm|filename.pat}
Eseutil /MK filename.chk
Eseutil /ML filename.log
/y Copy
Isinteg:用于查看逻辑的数据库的完整
默认模式:当维护时,使用默认模式
Fix 模式:
Isinteg S server_name L logfile_path_and_name TEST alltests
或者指定:
如-TEST folder,message,Msgref
通常都使用 alltests参数
以上操作IS服务必须运行,数据库必须Dismount;
出现1030错误解决办法用dcgpofix修复组策略,然后gpupdate/force,事件查看器中出现组策略中安全策略成功运用;域控制器策略更改成功后,域策略还无法编辑,通过命令行 dcgpofix /target:both