当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] New-MailboxRepairRequest:修复 Exchange 2016/2013/2010 中损坏的邮箱

作者:精品下载站 日期:2024-12-14 22:50:49 浏览:14 分类:玩电脑

New-MailboxRepairRequest:修复 Exchange 2016/2013/2010 中损坏的邮箱


Exchange管理员经常需要处理用户邮箱中的各种损坏和逻辑错误。此类逻辑错误出现在诸如同步错误、Outlook 挂起、文件夹项目的不正确表示、错误的项目编号、搜索和公共文件夹错误等问题中。

这些错误主要是由于 Outlook 故障而发生,如果客户端在邮箱文件夹元素处理期间错误地更新 MAPI 标志。大多数情况下,这种情况发生在多个用户同时使用的共享邮箱上。在大多数情况下,用户甚至可能不知道所连接的邮箱或文件夹中存在错误,正式上一切正常。然而,由于某些错误,用户在访问邮箱或某些文件夹、查看或删除电子邮件或文件夹等时可能会遇到问题。

如果用户遇到此类问题,Exchange服务器的管理员应使用以下三种方法之一来恢复此类损坏的邮箱。

  • 将数据从以缓存模式运行的 Outlook 导入到 .PST 文件,为“问题”用户删除并重新创建新邮箱,最后将数据从 PST 文件导入到新的 Exchange 邮箱。此方法假设在用户计算机上进行一定量的手动操作。

    提示。您可以使用 New-MailboxImportRequest 和 New-MailboxExportRequest cmdlet 将数据导入和导出到 Exchange Server 2019/2016/2013/2010 中的 PST 文件。

  • 完成卸载邮箱存储并使用Isinteg.exe(信息存储完整性检查器)实用程序进行检查,该实用程序允许根据应用程序级别修复 Exchange 中的损坏。对于邮箱分配在断开连接的数据库中的所有用户,此方法需要相当长的邮件服务停机时间。

    注意。在某些情况下,您可以尝试将所有用户的邮箱移动到“健康”邮箱数据库。在这种情况下,您可以检查商店的完整性,而无需禁用大量用户。然而,由于各种原因,该技术并不总是适用。

  • 从备份中恢复 Exchange 数据库,将数据从特定邮箱导入到 PST 文件,并将数据进一步传输到重新创建的邮箱。此方法有一个缺点 - 在上次备份执行时间之后到达用户邮箱的所有电子邮件都可能会丢失。

在 Exchange 2010 SP1 版本之前,Exchange 服务器管理员必须使用上述所有方法,此时出现了更方便的功能来恢复受损邮箱的逻辑结构 - 新的 PowerShell cmdlet New-MailboxRepairRequest。此 cmdlet 允许您在应用程序级别查找并修复 Exchange 数据库中的所有逻辑错误和损坏。您可以搜索并修复数据库中某个邮箱和所有邮箱的所有错误。

此外,当您使用 New-MailboxRepairRequest cmdlet 时,无需将邮件数据库完全置于脱机模式。每个数据库只有一个邮箱不可用,即当前正在执行验证和完整性的邮箱。在执行上述任何激进方法来恢复邮箱完整性之前,您绝对应该尝试使用此 PoSh 命令。

您可以使用此 cmdlet 查找、修复和监视所有受支持版本的 Exchange 2010、2013 和 2016 中损坏的邮箱。

New-MailboxRepairRequest cmdlet 的语法如下:

New-MailboxRepairRequest -Mailbox  -CorruptionType <MailboxStoreCorruptionType[]> [-Archive ] [-Confirm []] [-DetectOnly ] [-DomainController ] [-WhatIf []]

Cmdlet 允许您查找并修复 Exchange 邮箱中的以下损坏类型:

  • SearchFolder - 搜索文件夹中的错误;

  • AggregateCounts - 检查并更正文件夹中的项目数量及其大小;

  • FolderView - 文件夹视图表示的内容不正确;

  • ProvisionedFolder - 文件夹逻辑结构损坏。

使用 DetectOnly 参数,您可以检查一个邮箱或邮箱数据库而不执行任何操作,例如:

New-MailboxRepairRequest -Mailbox a-d -DetectOnly -CorruptionType ProvisionedFolder, SearchFolder

以下示例将启动对所有 4 种损坏类型的 a-d 用户邮箱分析和恢复过程。

New-MailboxRepairRequest -Mailbox a-d -CorruptionType ProvisionedFolder, SearchFolder, AggregateCounts, Folderview

以下示例将启动对所有 4 种损坏类型的 a-d 用户邮箱分析和恢复过程:

New-MailboxRepairRequest -Database “NYMailBase1” -CorruptionType ProvisionedFolder, SearchFolder, AggregateCounts, Folderview

该命令在后台模式下运行,其结果不会显示在 PowerShell 控制台中。您可以通过任务 ID (RequestID) 或/并借助 Windows 事件日志来跟踪它(事件源:MSExchangeIS Mailbox Store;EventID 10059 - 修复请求开始;EventID 10048 修复请求成功完成)。

以下 EventID 也很有用(为了便于跟踪 Exchange 邮箱的恢复过程,您可以将它们与源 MSExchangeIS 邮箱存储合并到自定义事件视图中)

  • 10044 - 已配置文件夹的邮箱修复请求失败

  • 10045 - 已配置文件夹的数据库修复请求失败

  • 10046 - 已配置的文件夹修复请求已成功完成

  • 10047 - 邮箱级修复请求已启动

  • 10048 - 修复请求成功完成

  • 10049 - 邮箱或数据库修复请求失败,因为 Exchange 遇到数据库问题或正在对数据库运行另一个任务

  • 10050 - 邮箱修复请求任务跳过了邮箱

  • 10051 - 由于数据库已卸载,数据库修复请求被取消。

  • 10059 - 数据库级修复请求已启动

  • 10062 - 检测到损坏

  • 10064 - 公共文件夹修复请求已启动

提示。 Exchange 2013 中出现了特殊的 cmdlet Get-MailboxRepairRequest,它允许您获取邮箱修复任务的状态。

[玩转系统] New-MailboxRepairRequest:修复 Exchange 2016/2013/2010 中损坏的邮箱

New-MailboxRepairRequest cmdlet 的功能之一 - 启动后,如果不停止 Exchange 信息存储服务并卸载邮箱数据库,则无法中断邮箱修复过程。

如果服务器上有多个邮箱数据库,为了维持 Exchange 服务器的性能,不建议对大量数据库同时运行 New-MailboxRepairRequest(尽管仅支持一个数据库使用一个 MailboxRepairRequest 进程,并且每台服务器最多支持 100 个修复请求)。

让我们看一个小案例,作为 cmdlet 使用的面向实践的示例。

Exchange 2016 用户遇到无法查看 Outlook 文件夹之一中的邮件的问题。指定的文件夹已从邮箱备份中恢复。然而,借助 Outlook/Outlook Web App/MFCMAPI(软删除或硬删除)似乎不可能删除此文件夹。当您尝试删除 Outlook 2016 中的文件夹时,您会收到以下错误:

无法删除该文件夹。右键单击该文件夹,然后单击“属性”以检查您对此文件夹的权限。请联系文件夹所有者或管理员来更改您的权限。

Outlook 正在同步对此文件夹中的项目所做的本地更改。在与服务器同步完成之前,您无法删除此文件夹

[玩转系统] New-MailboxRepairRequest:修复 Exchange 2016/2013/2010 中损坏的邮箱

要检查并恢复 Exchange 邮箱完整性,运行了以下 PoSh 命令:

New-MailboxRepairRequest -Mailbox [email protected] -CorruptionType ProvisionedFolder,SearchFolder,AggregateCounts,Folderview

[玩转系统] New-MailboxRepairRequest:修复 Exchange 2016/2013/2010 中损坏的邮箱

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯