次の方法で共有


Exchange Server 2010 で複数メールボックス検索を実行するときにエラーが発生しました:ユーザーに Exchange メールボックスがありません

元の KB 番号: 2702446

現象

次のような状況で問題が発生します。

  • Exchange コントロール パネル (ECP) は、Microsoft Exchange Server 2010 Enterprise または Exchange Server 2010 Standard で開始します。
  • 複数メールボックスの検索を行います。
  • 複数メールボックス検索では、検索のターゲットとしてシステム メールボックス、探索検索メールボックス、またはフェデレーション メールボックスが使用されます。

このシナリオでは、次のエラー メッセージが表示されることがあります。

ユーザーが Exchange メールボックスを持っていない

さらに、次のイベントがアプリケーション ログに記録されます。

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}

原因

この問題は、属性に値が設定されていないため、次のメールボックスの 1 つ以上が不整合な状態にある場合に発生する HomeMDB 可能性があります。

  • 1 つ以上のシステム メールボックス
  • フェデレーション メールボックス
  • 探索検索メールボックス

解決方法

この問題を解決するには、次の手順を実行します。

  1. ECP を開始します。

  2. 1 つ以上のメールボックスが一貫性のない状態であることを確認します。 これを行うには、次のコマンドレットを入力し、Enter キーを押します。

    Get-Mailbox -Arbitration |fl name, alias
    

    注:

    次のようなエラー メッセージが表示される場合があります。 このエラー メッセージは、1 つ以上のシステム メールボックスまたはフェデレーション メールボックスが一貫性のない状態であることを確認します。

    警告: オブジェクト SystemMailbox{1f05a927-9daf-4003-9bf7-036822f96290} が破損しています。
    一貫性のない状態にあります。 次の検証エラーが発生しました。
    警告: UserMailbox ではデータベースが必須です。
    警告: UserMailbox ではデータベースが必須です。

  3. メールボックスの属性の HomeMDB 値が見つからないことを確認します。 これを行うには、ECP に次のコマンドレットを入力し、Enter キーを押します。

        Get-Mailbox |fl name, alias
    

    注:

    次のエラー メッセージは、属性の値 HomeMDB が見つからないことを示しています。
    UserMailbox ではデータベースが必須です

  4. システム メールボックス、 HomeMDB フェデレーション メールボックス、または探索検索メールボックスと同じデータベース内のメールボックスの属性値をコピーします。 これを行うには、次の手順を実行します。

    1. [スタート] をクリックし、[プログラムとファイルの検索] ボックスに「Adsi Edit」と入力し、Enter キーを押します。

    2. [アクション] メニューで、[接続] をクリックします。

    3. [ ドメインまたはサーバーの選択または入力] をクリックし、目的のサーバーを選択して、[OK] をクリック します

    4. [ 既定の名前付けコンテキスト] を展開し、次の項目をクリックします。

      DC=domain,DC=com

    5. CN=Users をダブルクリックします。

    6. ユーザー メールボックスを右クリックし、[ プロパティ] をクリックします。

    7. [ 属性] で、[ homeMDB>編集] をクリックします。

    8. 属性の値を HomeMDB コピーし、[ OK] を 2 回クリックします。

  5. システム メールボックス、 HomeMDB フェデレーション メールボックス、または探索検索メールボックス アカウントの属性値を設定します。 これを行うには、次の手順を実行します。

    1. [ADSI 編集] で、システム メールボックス、フェデレーション メールボックス、または探索検索メールボックスのアカウントを右クリックし、[ プロパティ] をクリックします。
    2. [ 属性] で、[ homeMDB>編集] をクリックします。
    3. 手順 4 でコピーした属性値を入力するか貼り付けます HomeMDB
    4. [OK] を 2 回クリックします。
  6. [ファイル] メニューの [終了] をクリックします。

  7. フォレストをレプリケートします。 これを行うには、管理者特権のコマンド プロンプトで次のコマンドレットを入力し、Enter キーを押します。

    repadmin /syncall /e
    

詳細

属性の HomeMDB 詳細については、「 HomeMDB プロパティ」を参照してください。

属性の値 HomeMDB がシステム アテンダント メールボックスに存在しない場合に発生する可能性がある問題の詳細については、「 System Attendant homeMDB 属性がありません」を参照してください。