Compartilhar via


Erro ao executar uma pesquisa de várias caixas de correio no Exchange Server 2010: o usuário não tem uma caixa de correio de troca

Número de KB original: 2702446

Sintomas

Considere o seguinte cenário:

  • Você inicia o Exchange Painel de Controle (ECP) no Microsoft Exchange Server 2010 Enterprise ou no Exchange Server 2010 Standard.
  • Você faz uma pesquisa de várias caixas de correio.
  • A pesquisa de várias caixas de correio usa uma caixa de correio System, a caixa de correio Pesquisa de Descoberta ou a caixa de correio Federada como o destino da pesquisa.

Neste cenário, você pode receber a seguinte mensagem de erro:

O usuário não tem uma caixa de correio de troca

Além disso, o seguinte evento é registrado no log do aplicativo:

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}

Motivo

Esse problema pode ocorrer se uma ou mais das seguintes caixas de correio estiverem em um estado inconsistente porque nenhum valor é definido para o HomeMDB atributo:

  • Uma ou mais caixas de correio do Sistema
  • A caixa de correio Federada
  • A caixa de correio Pesquisa de Descoberta

Solução

Para resolver esse problema, siga estas etapas:

  1. Inicie o ECP.

  2. Verifique se uma ou mais caixas de correio estão em um estado inconsistente. Para fazer isso, digite o seguinte cmdlet e pressione Enter:

    Get-Mailbox -Arbitration |fl name, alias
    

    Observação

    Você pode receber uma mensagem de erro que se assemelha ao seguinte. Esta mensagem de erro confirma que uma ou mais caixas de correio do Sistema ou a caixa de correio Federada estão em um estado inconsistente:

    AVISO: o objeto SystemMailbox{1f05a927-9daf-4003-9bf7-036822f96290} foi corrompido, e é
    em um estado inconsistente. Os seguintes erros de validação ocorreram:
    AVISO: o banco de dados é obrigatório no UserMailbox.
    AVISO: o banco de dados é obrigatório no UserMailbox.

  3. Verifique se o valor do HomeMDB atributo está ausente para uma caixa de correio. Para fazer isso, digite o seguinte cmdlet no ECP e pressione Enter:

        Get-Mailbox |fl name, alias
    

    Observação

    A seguinte mensagem de erro indica que o valor do HomeMDB atributo está ausente:
    O banco de dados é obrigatório no UserMailbox

  4. Copie o valor do HomeMDB atributo de uma caixa de correio no mesmo banco de dados que a caixa de correio System, a caixa de correio Federada ou a caixa de correio Pesquisa de Descoberta. Para fazer isso, siga estas etapas:

    1. Clique em Iniciar, digite Adsi Editar na caixa De pesquisa de programas e arquivos e pressione Enter.

    2. No menu Ação, clique em Conectar-se a.

    3. Clique em Selecionar ou digite um domínio ou servidor, selecione o servidor desejado e clique em OK.

    4. Expanda o contexto de nomenclatura padrão e clique no seguinte item:

      DC=domain,DC=com

    5. Clique duas vezes em CN=Usuários.

    6. Clique com o botão direito do mouse em uma caixa de correio do usuário e clique em Propriedades.

    7. Em Atributo, clique em Editar homeMDB>.

    8. Copie o valor do HomeMDB atributo e clique em OK duas vezes.

  5. Defina o valor do HomeMDB atributo na caixa de correio Sistema, na caixa de correio Federada ou na conta da caixa de correio Pesquisa de Descoberta. Para fazer isso, siga estas etapas:

    1. Em Editar ADSI, clique com o botão direito do mouse na conta da caixa de correio Sistema, da caixa de correio Federada ou da caixa de correio Pesquisa de Descoberta e clique em Propriedades.
    2. Em Atributo, clique em Editar homeMDB>.
    3. Digite ou cole o valor de HomeMDB atributo copiado na etapa 4.
    4. Clique em OK duas vezes.
  6. No menu Arquivo, clique em Sair.

  7. Replicar a floresta. Para fazer isso, digite o seguinte cmdlet em um prompt de comando elevado e pressione Enter:

    repadmin /syncall /e
    

Mais informações

Para obter mais informações sobre o HomeMDB atributo, consulte Propriedade HomeMDB.

Para obter mais informações sobre um problema que pode ocorrer quando o valor do HomeMDB atributo estiver ausente na caixa de correio Do Atendente do Sistema, consulte O atributo homeMDB do Assistente do Sistema está ausente.