Exchange数据库可用性组(DAG)提供从数据库、服务器或网络故障中自动恢复数据库级别的功能。它在所有成员服务器上复制邮箱数据库并维护Quorum。如果由于一个或多个成员服务器故障或离线而导致Quorum丢失,DAG可能无法提供任何可能导致灾难的保护。但是,您可以使用restore - databaseavailabilitygroup PowerShell cmdlet来恢复DAG功能。
本文讨论如何在Quorum丢失时使用Restore-DatabaseAvailabilityGroup cmdlet进行Exchange灾难恢复。
什么是法定人数?
法定人数是指在任何给定时间,一个服务器的正常运行所需的最低成员服务器数量数据库可用性组(DAG):.它确保至少有一个成员服务器总是在同一时间运行。
法定人数是最重要的,因为它有助于确保以下:
- 交换DAG一致性。
- 集群的响应能力。
- 充当“分割线”以避免分区。
Exchange Server 2010及后续版本支持以下Quorum模型:
- 节点多数对于成员服务器数量为奇数的DAG。
- 文件共享数量对于偶数个成员服务器。
两家公司都雇佣了一个见证服务器,作为胜负决胜的角色。要了解更多关于Quorum及其在DAG中的重要性,请参阅此微软文档.
“Restore-DatabaseAvailabilityGroup”如何恢复仲裁?
的Restore-DatabaseAvailabilityGroupcmdlet通过执行以下操作帮助恢复丢失的Quorum,这些操作会影响DAG集群的结构和成员。
- 列表中列出的服务器将被清除StoppedMailboxServers从DAG的集群中强制列表。这将为集群重新建立Quorum,并使幸存的DAG成员能够启动和提供服务。
- 如果存在偶数个幸存的DAG成员或单个幸存的DAG成员,则配置DAG使用备用证人服务器.
Restore-DatabaseAvailabilityGroup Cmdlet使用步骤
按照下面讨论的步骤学习如何使用Restore-DatabaseAvailabilityGroup cmdlet。
步骤1:分配角色和权限
在使用Restore-DatabaseAvailabilityGroup为了恢复DAG集群,您必须为您的用户名分配正确的角色和权限。要使用这个特定的cmdlet,必须具有灾难恢复分配给用户帐户的角色。要分配此角色,请打开EAC,去权限>管理的角色,并赋值灾难恢复的作用下组织管理.
您还可以使用以下PowerShell cmdlet in将灾难恢复角色分配给您的帐户Exchange Management Shell(EMS).
New-ManagementRoleAssignment -容灾角色-管理员用户
此命令将分配所需的灾难恢复的角色管理员.
步骤2:激活DAG成员服务器
使用Restore-DatabaseAvailabilityGroup,如果由于Quorum丢失导致自动故障转移失败,可以手动激活DAG成员服务器。属性设置备用的见证服务器和见证目录Set-DatabaseAvailabilityGroupcmdlet。
Set-DatabaseAvailabilityGroup -Identity DAG01 -AlternateWitnessDirectory nonrootlocallongfullpath -AlternateWitnessServer /filesharewitnessservername/ /filesharewitnessservername/ ocallongfullpath
例如,
D:\DAG01 -AlternateWitnessServer WS03
一旦AlternateWitnessDirectory而且AlternateWitnessServer设置后,可以执行Restore-DatabaseAvailabilityGroup激活DAG01中的成员服务器。
还原- databaseavailabilitygroup -Identity DAG1 -ActiveDirectorySite US
你可以使用AlternateWitnessDirectory而且AlternateWitnessServer如果您不想使用Set-DatabaseAvailabilityGroup cmdlet,则可以使用Restore-DatabaseAvailabilityGroup cmdlet。
恢复数据库可用性组-身份DAG01 -ActiveDirectorySite US -AlternateWitnessDirectory D:\DAG01 -AlternateWitnessServer WS03
输入确认Y然后按下输入关键。你也可以使用确认:$假参数执行命令,不提示确认。
重要提示:Restore-DatabaseAvailabilityGroup cmdlet仅适用于Exchange Server 2010 (SP1及更高版本)、Exchange Server 2013、Exchange Server 2016和Exchange Server 2019。
Restore-DatabaseAvailabilityGroup使用的参数如下:
- -身份
指定DAG服务器标识或名称。
- -ActiveDirectorySite
指定包含要恢复的DAG成员服务器的位置或站点。
- -AlternateWitnessDirectory
指定存储见证数据副本的备用目录名。属性一起使用此参数Set-DatabaseAvailabilityGroupcmdlet直接或使用Restore-DatabaseAvailabilityGroup设置目录。
- -AlternateWitnessServer
指定激活过程后将成为DAG一部分的新见证服务器名称。可以将此参数与Set-DatabaseAvailabilityGroupCmdlet来提前设置见证服务器Restore-DatabaseAvailabilityGroup.
还有一些其他值得注意的参数可以与Restore-DatabaseAvailabilityGroup cmdlet一起使用。
- -DomainController
该参数指定将数据读或写到Active Directory的域控制器。必须通过域控制器的完全限定域名(FQDN)指定域控制器。例如,dag01.abc.com。
- -UsePrimaryWitnessServer
该参数指定并使用DAG当前配置的见证服务器来激活成员服务器。
- 尼塔
的尼塔Switch模拟命令动作。您可以将它与任何命令一起使用,以检查在不实际应用更改的情况下运行命令时会发生什么。
结论
如果Restore-DatabaseAvailabilityGroupcmdlet无法恢复您的DAG或集群成员的子集,您可以使用第三方Exchange恢复软件,例如Stellar Repair for Exchange。该软件可以帮助从失败的Exchange DAG成员服务器或损坏的Exchange邮箱数据库中提取邮箱和邮件到PST文件。您还可以设置一个新的Exchange DAG成员服务器,并将恢复的邮箱直接导出到这个新的服务器数据库。此外,您还可以将邮箱导出到Office 365租户。