询问者
exchange server 2019安装部署过程邮箱服务出现报错

问题
-
报错信息:
错误:
运行"$error.Clear();
if (($RoleIsDatacenter -ne $true) -and ($RoleIsDatacenterDedicated -ne $true))
{
if (test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
{
# upgrade the discovery mailboxes to R5 version, this will fix the RecipientDisplayType property of the discovery mailbox which was wrong in R4.
get-mailbox -RecipientTypeDetails DiscoveryMailbox -DomainController $RoleDomainController | where {$_.IsValid -eq $false} | set-mailbox -DomainController $RoleDomainController
$name = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxUniqueName;
$dispname = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxDisplayName;
$mbxs = @( get-mailbox -Filter {name -eq $name} -IgnoreDefaultScope -resultSize 1 );
if ( $mbxs.length -eq 0)
{
$dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
if($dbs.Length -ne 0)
{
$mbxUser = @(get-user -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
if ($mbxUser.Length -ne 0)
{
enable-mailbox -Discovery -identity $mbxUser[0] -DisplayName $dispname -database $dbs[0].Identity;
}
}
}
}
else
{
write-exchangesetuplog -info "Skipping creating Discovery Search Mailbox because of insufficient permission."
}
}
"时生成以下错误:"Microsoft.Exchange.Configuration.Tasks.ManagementObjectNotFoundException: 找不到数据库"qlUsers"。请确保键入的数据库正确。
在 Microsoft.Exchange.Configuration.Tasks.DataAccessTask`1.GetDataObject[TObject](IIdentityParameter id, IConfigDataProvider session, ObjectId rootID, OptionalIdentityData optionalData, Func`2 notFoundError, Func`2 multipleFoundError, ExchangeErrorCategory errorCategory)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.<>c__DisplayClass68_0.<SetDefaultRetentionValues>b__0()
在 Microsoft.Exchange.Data.Directory.ProvisioningCache.ProvisioningCache.TryAddAndGetGlobalDictionaryValue[T,K](Guid key, K subKey, CacheObjectGetterDelegate getter)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.SetDefaultRetentionValues(Mailbox mailbox)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.ConvertDataObjectToPresentationObject(IConfigurable dataObject)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailbox.ConvertDataObjectToPresentationObject(IConfigurable dataObject)
在 Microsoft.Exchange.Configuration.Tasks.GetRecipientObjectTask`2.WriteResult(IConfigurable dataObject)
在 Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.WriteResult[T](IEnumerable`1 dataObjects)
在 Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.GetObjectWithIdentityTaskBase`2.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.GetRecipientObjectTask`2.InternalProcessRecord()
在 Microsoft.Exchange.Management.RecipientTasks.GetRecipientWithAddressListBase`2.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
在 Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)"。
错误:
运行"$error.Clear();
if (($RoleIsDatacenter -ne $true) -and ($RoleIsDatacenterDedicated -ne $true))
{
if (test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
{
# upgrade the discovery mailboxes to R5 version, this will fix the RecipientDisplayType property of the discovery mailbox which was wrong in R4.
get-mailbox -RecipientTypeDetails DiscoveryMailbox -DomainController $RoleDomainController | where {$_.IsValid -eq $false} | set-mailbox -DomainController $RoleDomainController
$name = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxUniqueName;
$dispname = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxDisplayName;
$mbxs = @( get-mailbox -Filter {name -eq $name} -IgnoreDefaultScope -resultSize 1 );
if ( $mbxs.length -eq 0)
{
$dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
if($dbs.Length -ne 0)
{
$mbxUser = @(get-user -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
if ($mbxUser.Length -ne 0)
{
enable-mailbox -Discovery -identity $mbxUser[0] -DisplayName $dispname -database $dbs[0].Identity;
}
}
}
}
else
{
write-exchangesetuplog -info "Skipping creating Discovery Search Mailbox because of insufficient permission."
}
}
"时生成以下错误:"Microsoft.Exchange.Configuration.Tasks.ManagementObjectNotFoundException: 找不到数据库"qlUsers"。请确保键入的数据库正确。
在 Microsoft.Exchange.Configuration.Tasks.DataAccessTask`1.GetDataObject[TObject](IIdentityParameter id, IConfigDataProvider session, ObjectId rootID, OptionalIdentityData optionalData, Func`2 notFoundError, Func`2 multipleFoundError, ExchangeErrorCategory errorCategory)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.<>c__DisplayClass68_0.<SetDefaultRetentionValues>b__0()
在 Microsoft.Exchange.Data.Directory.ProvisioningCache.ProvisioningCache.TryAddAndGetGlobalDictionaryValue[T,K](Guid key, K subKey, CacheObjectGetterDelegate getter)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.SetDefaultRetentionValues(Mailbox mailbox)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailboxOrSyncMailbox`1.ConvertDataObjectToPresentationObject(IConfigurable dataObject)
在 Microsoft.Exchange.Management.RecipientTasks.GetMailbox.ConvertDataObjectToPresentationObject(IConfigurable dataObject)
在 Microsoft.Exchange.Configuration.Tasks.GetRecipientObjectTask`2.WriteResult(IConfigurable dataObject)
在 Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.WriteResult[T](IEnumerable`1 dataObjects)
在 Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.GetObjectWithIdentityTaskBase`2.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.GetRecipientObjectTask`2.InternalProcessRecord()
在 Microsoft.Exchange.Management.RecipientTasks.GetRecipientWithAddressListBase`2.InternalProcessRecord()
在 Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
在 Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)"。
错误:
运行"$error.Clear();
if (($RoleIsDatacenter -ne $true) -and ($RoleIsDatacenterDedicated -ne $true))
{
if (test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
{
# upgrade the discovery mailboxes to R5 version, this will fix the RecipientDisplayType property of the discovery mailbox which was wrong in R4.
get-mailbox -RecipientTypeDetails DiscoveryMailbox -DomainController $RoleDomainController | where {$_.IsValid -eq $false} | set-mailbox -DomainController $RoleDomainController
$name = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxUniqueName;
$dispname = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxDisplayName;
$mbxs = @( get-mailbox -Filter {name -eq $name} -IgnoreDefaultScope -resultSize 1 );
if ( $mbxs.length -eq 0)
{
$dbs = @(get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
if($dbs.Length -ne 0)
{
$mbxUser = @(get-user -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
if ($mbxUser.Length -ne 0)
{
enable-mailbox -Discovery -identity $mbxUser[0] -DisplayName $dispname -database $dbs[0].Identity;
}
}
}
}
else
{
write-exchangesetuplog -info "Skipping creating Discovery Search Mailbox because of insufficient permission."
}
}
"时生成以下错误:"Microsoft.Exchange.Management.Tasks.RecipientTaskException: 此任务不支持该类型的收件人。指定的收件人 .com/Users/DiscoverySearchMailbox {D919BA05-46A6-415f-80AD-7E09334BB852} 属于 UserMailbox 类型。请确保此收件人与此任务需要的收件人类型匹配。
在 Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
在 Microsoft.Exchange.Management.RecipientTasks.EnableMailbox.PrepareRecipientObject(ADUser& user)
在 Microsoft.Exchange.Management.RecipientTasks.EnableRecipientObjectTask`2.PrepareDataObject()
在 Microsoft.Exchange.Configuration.Tasks.SetTaskBase`1.InternalValidate()
在 Microsoft.Exchange.Configuration.Tasks.RecipientObjectActionTask`2.InternalValidate()
在 Microsoft.Exchange.Management.RecipientTasks.EnableMailbox.InternalValidate()
在 Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
在 Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)"。
请问这是怎么回事?改符合解决此报错?谢谢
全部回复
-
您好,
请问部署Exchange 2019之前AD组织环境中是否有安装过其他Exchange 服务器呢?还是第一次部署安装 Exchange 2019还是从老的Exchange服务器升级到2019?
根据报错信息, 安装失败和DiscoverySearchMailbox有关。如果升级安装部署的话,您可以尝试以下步骤规避该报错:
1.禁用DiscoverySearchMailbox。
Disable-Mailbox “DiscoverySearchMailbox {D919BA05-46A6-415f-80AD-7E09334BB852}”
2.重新安装 Exchange 2019服务器,安装成功后,运行以下命令重新启用邮箱。
Enable-Mailbox “DiscoverySearchMailbox {D919BA05-46A6-415f-80AD-7E09334BB852}” -Arbitration
此致,
Kelvin Deng
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 ThinkCenter 2019年7月24日 8:19
-
您好,
DiscoveryMailbox用于合规性搜索,一般用于公司审计人员搜索所邮箱中的电子邮件。临时禁用该邮箱对邮件收发不会造成影响,但还是建议您在非工作高峰时段进行操作,当新邮箱部署成功后重新启用邮箱。
此致,
Kelvin Deng
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 ThinkCenter 2019年7月26日 1:38
-
您好,
请使用ADSI Edit检查Discovery邮箱对应的AD帐户homeMDB值,邮箱路径如下。如果该值为空或者与其他系统邮箱的homeMDB值不同,请从其他系统邮箱复制此值并粘贴到Discovery邮箱中。
Default naming context\Users\DiscoverySearchMailbox
您也可以参考以下文章中的修改方法:
注意:本篇回复包含了对第三方网站的引用。微软提供这些信息仅仅是为了给您提供一些方便,对其所提供的软件或者信息的质量、安全性以及适用性不提供任何形式的保证。
此致,
Kelvin Deng
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 ThinkCenter 2019年7月30日 7:08
- 已建议为答案 ThinkCenter 2019年7月31日 7:44
-
您好,
长时间没有收到您的回复,请问问题解决了吗?
如果您需要进一步的帮助,请提供相关信息,我们会继续为您提供帮助。
此致,
Kelvin Deng
如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.
- 已编辑 ThinkCenter 2019年8月2日 9:41