none
exchange server 2019安装部署过程邮箱服务出现报错 RRS feed

  • 问题

  • 报错信息:

    错误:
    运行"$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)"。


    请问这是怎么回事?改符合解决此报错?谢谢

    2019年7月24日 2:03

全部回复

  • 您好,

     

    请问部署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.

    2019年7月24日 8:19
  • 你好!

    原来有一台exchange 2013服务器,现在正常使用中,安装新的exchange 2019为了做新邮件服务器迁移准备。你上述说的禁用DiscoverySearchMailbox,会影响正常exchange 2013服务器工作吗?

    谢谢

    2019年7月25日 1:48
  • 您好,

     

    DiscoveryMailbox用于合规性搜索,一般用于公司审计人员搜索所邮箱中的电子邮件。临时禁用该邮箱对邮件收发不会造成影响,但还是建议您在非工作高峰时段进行操作,当新邮箱部署成功后重新启用邮箱。

    此致, 

    Kelvin Deng


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2019年7月26日 1:38
  • 你好!

       我禁用了DiscoveryMailbox,重新安装exchange 2019,还是出现上述报错。有没有什么办法直接跳过或者解决这个报错信息呢?谢谢

    2019年7月26日 5:14
  • 您好,

     

    请使用ADSI Edit检查Discovery邮箱对应的AD帐户homeMDB值,邮箱路径如下。如果该值为空或者与其他系统邮箱的homeMDB值不同,请从其他系统邮箱复制此值并粘贴到Discovery邮箱中

     

    Default naming context\Users\DiscoverySearchMailbox

     

    也可以参考以下文章中的修改方法

    https://snovih.wordpress.com/2013/12/24/error-exchange-2013-mailbox-role-fails-stating-to-upgrade-the-discovery-mailboxes-to-r5-version/

    注意:本篇回复包含了对第三方网站的引用。微软提供这些信息仅仅是为了给您提供一些方便,对其所提供的软件或者信息的质量、安全性以及适用性不提供任何形式的保证。

    此致, 

    Kelvin Deng


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2019年7月30日 7:08
  • 您好,

     

    长时间没有收到您的回复,请问问题解决了吗?

     

    如果您需要进一步的帮助,请提供相关信息,我们会继续为您提供帮助。

    此致, 

    Kelvin Deng


    如果以上回复对您有所帮助,建议您将其“标记为答复”. 如果您对我们的论坛支持有任何的建议,可以通过此邮箱联系我们:tnsf@microsoft.com.

    2019年8月2日 9:41