在 Exchange Server 2010 中执行多邮箱搜索时出错:用户没有交换邮箱
原始 KB 编号: 2702446
症状
请考虑以下情况:
- 在 Microsoft Exchange Server 2010 企业版或 Exchange Server 2010 标准版中启动 Exchange 控制面板 (ECP) 。
- 执行多邮箱搜索。
- 多邮箱搜索使用系统邮箱、发现搜索邮箱或联合邮箱作为搜索目标。
在这种情况下,你可能会收到以下错误消息:
用户没有交换邮箱
此外,应用程序日志中记录了以下事件:
Log Name: Application
Source: MSExchange Configuration Cmdlet - Remote Management
Event ID: 5
Task Category: General
Level: Error
Keywords: Classic
Description:
(PID 6268, Thread 53) Task New-MailboxSearch throwing terminating exception at stage Microsoft.Exchange.Data.Storage.UserHasNoMailboxException: The user does not have an Exchange mailbox.
at Microsoft.Exchange.Data.Storage.ExchangePrincipal.InternalFromADUser(ADUser user, ADObjectId mdb, DatabaseLocationInfo databaseLocationInfo, Boolean ignoreSiteBoundary)
at Microsoft.Exchange.Data.Storage.Infoworker.MailboxSearch.MailboxDataStore.OpenMailboxSession(ADUser adUser)
at Microsoft.Exchange.Data.Storage.Infoworker.MailboxSearch.MailboxDataStore..ctor(ADUser adUser)
at Microsoft.Exchange.Data.Storage.Infoworker.MailboxSearch.MailboxDataProvider.OpenMailboxStore()
at Microsoft.Exchange.Data.Storage.Infoworker.MailboxSearch.MailboxDataProvider.Exists[T](String name)
at Microsoft.Exchange.Management.Tasks.NewMailboxSearch.PreSaveValidate(SearchObject savedObject)
at Microsoft.Exchange.Management.Tasks.NewMailboxSearch.InternalEndProcessing(). Exception: {4c1ab22a-bd1d-41e9-b178-5e75ffd14563}
原因
如果以下一个或多个邮箱处于不一致状态,因为未为 HomeMDB
属性设置值,则可能会出现此问题:
- 一个或多个系统邮箱
- 联合邮箱
- 发现搜索邮箱
解决方案
若要解决此问题,请按照下列步骤操作:
启动 ECP。
验证一个或多个邮箱是否处于不一致状态。 为此,请键入以下 cmdlet,然后按 Enter:
Get-Mailbox -Arbitration |fl name, alias
注意
你可能会收到类似于以下内容的错误消息。 此错误消息确认一个或多个系统邮箱或联合邮箱处于不一致状态:
警告:对象 SystemMailbox{1f05a927-9daf-4003-9bf7-036822f96290} 已损坏,已损坏
处于不一致状态。 发生以下验证错误:
警告:数据库在 UserMailbox 上是必需的。
警告:数据库在 UserMailbox 上是必需的。验证邮箱的属性
HomeMDB
值是否缺失。 为此,请在 ECP 中键入以下 cmdlet,然后按 Enter:Get-Mailbox |fl name, alias
注意
以下错误消息指示缺少 属性的值
HomeMDB
:
UserMailbox 上必须提供数据库HomeMDB
复制与系统邮箱、联合邮箱或发现搜索邮箱相同的数据库中邮箱的属性值。 为此,请按照下列步骤操作:单击“开始”,在“搜索程序和文件”框中键入 Adsi Edit,然后按 Enter。
在“操作”菜单上,单击“连接到”。
单击 “选择或键入域或服务器”,选择所需的服务器,然后单击“ 确定”。
展开 “默认命名上下文”,然后单击以下项:
DC=domain,DC=com
双击“ CN=用户”。
右键单击用户邮箱,然后单击“ 属性”。
在 “属性”下,单击“ 主页MDB>编辑”。
复制属性的值
HomeMDB
,然后单击“ 确定 ”两次。
在
HomeMDB
系统邮箱、联合邮箱或发现搜索邮箱帐户上设置属性值。 为此,请按照下列步骤操作:- 在 ADSI 编辑中,右键单击系统邮箱、联合邮箱或发现搜索邮箱的帐户,然后单击“ 属性”。
- 在 “属性”下,单击“ 主页MDB>编辑”。
- 键入或粘贴
HomeMDB
在步骤 4 中复制的属性值。 - 单击 “确定” 两次。
在文件菜单上,单击退出。
复制林。 为此,请在提升的命令提示符下键入以下 cmdlet,然后按 Enter:
repadmin /syncall /e
更多信息
有关 属性的详细信息 HomeMDB
,请参阅 HomeMDB 属性。
有关当系统助理邮箱上缺少属性的值 HomeMDB
时可能发生的问题的详细信息,请参阅 缺少系统助理 homeMDB 属性。