在什么情况下需要更新数据库副本
更新(亦称为种子设定)是将邮箱数据库副本添加到数据库可用性组 (DAG) 中另一邮箱服务器的过程。新添加的副本将成为被动副本的基线数据库,其中将重播从主动副本复制的日志文件。在下列情况下必须设定种子:
1.新建数据库的被动副本时。
对于新的邮箱数据库副本,可以推迟种子设定;但最终每个被动数据库副本都必须设定种子,才能用作冗余数据库副本。
2.任一数据库副本进行脱机碎片整理后。
种子设定的方法
1.自动种子设定
自动种子设定在数据库创建期间执行,用于在目标邮箱服务器上生成活动数据库的被动副本。
2.使用 Update-MailboxDatabaseCopy cmdlet 设定种子
可以随时在命令行管理程序中使用 Update-MailboxDatabaseCopy cmdlet 将数据库副本设定为种子。
3.使用更新邮箱数据库副本向导设定种子
可以在 EAC 中随时使用更新邮箱数据库副本向导将数据库副本设定为种子。
注意:更新之前需要先挂起数据库复制。
挂起完成后,就可以看到更新选项了。
4.手动复制脱机数据库
可以卸除数据库的主动副本,并将数据库文件复制到同一 DAG 中另一邮箱服务器上的同一位置。使用此方法时,会遇到服务中断,因为此过程需要卸除数据库。
更新数据库副本可能需要很长时间才能完成,尤其当要复制的数据库很大或者网络延迟严重或网络带宽很低时。种子设定过程启动后,请勿在此过程结束前关闭 EAC 或命令行管理程序。否则,种子设定操作会终止。
可将主动副本或最新被动副本用作种子设定的源,为数据库副本设定种子。从被动副本设定种子时,请注意,在以下几种情况下,若出现网络通信错误,则种子设定操作会终止:
1.种子设定源副本的状态更改为已失败或 FailedAndSuspended 时。
2.数据库故障转移到其他副本时。
可以同时为多个数据库副本设定种子。不过,若同时为多个副本设定种子,只能对数据库文件设定种子,并省略内容索引目录。为此,可以结合使用 DatabaseOnly 参数和 Update-MailboxDatabaseCopy cmdlet。
如果在从同一源为多个目标设定种子时不使用 DatabaseOnly 参数,此任务将失败,出现 SeedInProgressException 错误 FE1C6491。
使用命令行管理程序更新邮箱数据库副本
本示例显示如何对 MBX1 上的数据库 DB1 的副本设定种子。
Update-MailboxDatabaseCopy -Identity DB1\MBX1
本示例显示如何使用 MBX2 作为种子的源邮箱服务器对 MBX1 上的数据库 DB1 的副本设定种子。
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -SourceServer MBX2
本示例显示如何对 MBX1 上的数据库 DB1 的副本设定种子,而不对内容索引编录设定种子。
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -DatabaseOnly
本示例显示如何对 MBX1 上的数据库 DB1 的副本的内容索引编录设定种子,而不对数据库文件设定种子。
Update-MailboxDatabaseCopy -Identity DB1\MBX1 -CatalogOnly
手动复制脱机数据库(可选阅读)
如果为数据库启用循环日志记录,则在继续之前必须先禁用它。通过使用 Set-MailboxDatabasecmdlet 可以禁用邮箱数据库的循环日志记录,如本例中所示。
Set-MailboxDatabase DB1 -CircularLoggingEnabled $false
卸除数据库。可以使用 Dismount-Database cmdlet,如此示例中所示。
Dismount-Database DB1 -Confirm $false
手动将数据库文件(数据库文件和所有日志文件)复制到第二个位置,例如外部磁盘驱动器或网络共享。
装载数据库。可以使用 Mount-Database cmdlet,如此示例中所示。
Mount-Database DB1
在托管副本的服务器上,将数据库文件从外部驱动器或网络共享复制到与主动数据库副本相同的路径。例如,如果主动数据库副本路径为 D:\DB1\DB1.edb,日志文件路径为 D:\DB1,则可以将数据库文件复制到将托管副本的服务器上的 D:\DB1。
通过使用 Add-MailboxDatabaseCopy cmdlet 和 SeedingPostponed 参数,添加邮箱数据库副本,如此示例中所示。
Add-MailboxDatabaseCopy -Identity DB1 -MailboxServer MBX3 -SeedingPostponed
如果为数据库启用循环日志记录,则使用 Set-MailboxDatabase cmdlet 再次启用它,如此示例中所示。
Set-MailboxDatabase DB1 -CircularLoggingEnabled $true
获取更多IT资讯,您也可以关注下方的微信公众号:
曾垂鑫的网络课堂,曾垂鑫大讲堂 - 51CTO学院
http://edu.51cto.com/lecturer/639838.html
原文地址:http://blog.51cto.com/543925535/2088904