Exchange の検索に関する問題を診断する

 

適用先: Exchange Server 2010 SP2, Exchange Server 2010 SP3

トピックの最終更新日: 2016-11-28

Exchange Search は、メールボックス、および Exchange メールボックスでサポートしている添付ファイルをインデックス処理します。電子メール数の増加や、メールボックス サイズと格納域の制限の増大、ユーザーに対する個人用のアーカイブ メールボックスの準備、探索検索を実行するための複数のメールボックス検索の導入に伴い、Exchange Search は、Microsoft Exchange Server 2010 組織内にあるメールボックス サーバーの重要なコンポーネントになっています。Exchange Search の問題は、ユーザーの生産性に影響を及ぼし、複数のメールボックス検索機能に悪影響を及ぼしかねません。

Exchange Search の詳細については、「Exchange Search について」を参照してください。

Exchange Search の管理に関連する管理タスクについては、「Exchange Search の管理」を参照してください。

Test-ExchangeSearch コマンドレットの使用方法

このトピックの手順 5 では、Exchange Search の問題の診断に役立つ Test-ExchangeSearch コマンドレットの実行について説明します。Test-ExchangeSearch コマンドレットは、メールボックス サーバー、メールボックス データベース、または特定のメールボックスの Exchange Search 機能をテストするのに使用します。このコマンドレットは、指定したメールボックス (またはメールボックスを指定しない場合は、データベースのシステム メッセージ) にテスト メッセージを配信し、テスト メッセージがインデックス処理されているかどうかをメッセージをインデックス処理にかかった時間を含め判断するために検索を実行します。通常の状態では、Exchange Search は、作成中またはメールボックスに送信中のメッセージに対して約 10 秒以内にインデックス処理を行います。テスト後、テスト メッセージは自動的に削除されます。

Exchange 2010 では、Test-ExchangeSearch コマンドレットに対する次のように拡張機能が組み込まれました。

  • Mailbox パラメーターが標準出力に追加されました。

  • サーバー名を指定すると、このコマンドレットはメールボックス サーバー上のすべてのメールボックス データベースを同時にテストします。データベース可用性グループ (DAG) 内の他のメールボックス サーバーにレプリケートされたデータベースの場合、アクティブなデータベース コピーが格納されていないメールボックス サーバー上でコマンドを実行すると、アクティブなデータベース コピーが格納されているサーバーに対してテストが自動的に実行されます。

  • MonitoringContext パラメーターを指定してこのコマンドレットを実行すると、このコマンドレットによって Microsoft System Center Operations Manager 2007 などの監視ソフトウェアが使用可能な追加のデータが提供されます。

  • Verbose スイッチを指定してこのコマンドレットを実行すると、このコマンドレットによってすべてのステップの詳細な結果と状態、および検索に関連する問題の解決に役立つ追加の情報が返されます。

構文およびパラメーターの詳細については、「test-ExchangeSearch」を参照してください。

検索不能アイテムの取得

Exchange Search で正常にインデックス処理できなかった検索不能メールボックス アイテムの一覧を取得するには、Get-FailedContentIndexDocuments コマンドレットを使用します。このコマンドレットは、メールボックス サーバー、メールボックス データベース、または特定のメールボックスに対して実行できます。このコマンドレットを実行すると、検索できなかった各アイテムの詳細が返されます。メールボックス アイテムを検索できない理由はいくつかあります。たとえば、電子メール メッセージに検索フィルターがインストールされていない添付ファイルの種類が含まれている場合などです。このようなファイルの種類の検索フィルターが使用可能な場合は、Exchange サーバーにそれをインストールしてください。

重要

マイクロソフトが提供している検索フィルターは、マイクロソフトがテストし、サポートしています。サードパーティ製の検索フィルターは、運用環境の Exchange サーバーにインストールする前にテスト環境でテストすることをお勧めします。

注意

セーフ リストに一覧されている添付ファイル形式に含まれるメッセージは、検索不能アイテム リストには返されません。詳細については、「Exchange Search について」の「Exchange Search と添付ファイル」を参照してください。

構文およびパラメーターの詳細については、「Get-FailedContentIndexDocuments」を参照してください。

Exchange Search の問題の診断

この手順を実行する際には、あらかじめアクセス許可を割り当てる必要があります。必要なアクセス許可の一覧については、以下を参照してください。「メールボックスのアクセス許可」の「Exchange Search」。

  1. サービス状態をチェックする   Microsoft Exchange Search Indexer (MSExchangeSearch) サービスがメールボックス サーバー上で開始されていることを確認します。開始している場合は手順 2. に進み、開始していない場合はサービス MMC スナップインを使用して、次の手順に従って MSExchangeSearch サービスが実行されていることを確認します。

    1. [スタート] ボタンをクリックし、[管理ツール] をポイントします。次に、[サービス] をクリックします。

    2. [サービス] で、[Microsoft Exchange Search Indexer] サービスの [状態][開始] として一覧表示されていることを確認します。

  2. メールボックス データベース構成をチェックする   ユーザーのメールボックス データベースに対して IndexEnabled パラメーターが true に設定されていることを確認します。True に設定されている場合は手順 3. に進み、設定されていない場合はシェルで次のコマンドを実行して、IndexEnabled フラグが True に設定されていることを確認します。

    Get-MailboxDatabase | Format-Table Name,IndexEnabled
    

    構文およびパラメーターの詳細については、「Get-MailboxDatabase」を参照してください。

  3. メールボックス データベースのクロール状態をチェックする   Exchange データベースのクロールが完了しているかどうかを確認します。完了している場合は手順 4. に進みます。完了していない場合は信頼性とパフォーマンス モニターを使用して MSExchange Search Indices パフォーマンス オブジェクトの Full Crawl Mode Status カウンターを確認します。次の手順を実行します。

    1. 信頼性とパフォーマンス モニター (perfmon.exe) を開きます。

    2. コンソール ツリーで、[管理ツール] の下の [パフォーマンス モニター] をクリックします。

    3. パフォーマンス モニター ウィンドウで、[追加] (緑色のプラス記号) をクリックします。

    4. [カウンターの追加][次のコンピューターからカウンターを選ぶ] ボックスの一覧から、監視するメールボックス データベースが置かれているサーバーを選択します。

    5. [次のコンピューターからカウンターを選ぶ] ボックスの一覧の下にあるボックス (ラベルなし) で、MSExchange Search Indices パフォーマンス オブジェクトを選択します。

    6. [選択したオブジェクトのインスタンス] ボックスで、ユーザーのメールボックス データベースのインスタンスを選択します。

    7. [追加] をクリックし、[OK] をクリックします。

    パフォーマンス モニター ウィンドウでは、MSExchange Search Indices パフォーマンス オブジェクトが [オブジェクト] 列に、パフォーマンス オブジェクトの各種カウンターが [カウンター] 列に一覧表示されます。Full Crawl Mode Status カウンターを表示します。データベースがまだクロール中である場合、値は 1 になります。クロールが完了すると、値は 0 になります。

    その他の関連する検索カウンターを表示するには、前述の手順 a ~ g に従って、次のパフォーマンス オブジェクトを追加します。

    • MSExchange Search Indexer

    • MSFTESQL-Exchange:Catalogs

    • MSFTESQL-Exchange:FD

    • MSFTESQL-Exchange:Indexer

    • MSFTESQL-Exchange:Service

    パフォーマンス モニターを使用する方法の詳細については、ステップ バイ ステップ ガイド - Windows Server 2008 のパフォーマンスと信頼性の監視 を参照してください。

  4. データベース コピーのインデックス処理の正常性をチェックする   コンテンツ インデックスが正常であることを確認します。データベース コピーのコンテンツのインデックス処理の正常性をチェックするには、Get-MailboxDatabaseCopyStatus コマンドレットを使用します。

    Get-MailboxDatabaseCopyStatus | Format-Table Identity,ActiveDatabaseCopy,ContentIndexState -Auto
    

    構文およびパラメーターの詳細については、「Get-MailboxDatabaseCopyStatus」を参照してください。

  5. Test-ExchangeSearch コマンドレットを実行する   メールボックス データベースのクロールが既に完了している場合、Test-ExchangeSearch コマンドレットは、特定のメールボックスのメールボックス データベースに対して実行できます。

    Test-ExchangeSearch -Identity AlanBrewer@contoso.com
    

    構文およびパラメーターの詳細については、「Test-ExchangeSearch」を参照してください。

  6. アプリケーション イベント ログをチェックする   イベント ビューアーまたはシェルを使用して、アプリケーション イベント ログ内の検索関連エラー メッセージを確認します。ソース:MSExchangeSearch Indexer イベントと msftesql-Exchange イベントを確認します。詳細については、イベント ログのエントリのリンクを参照してください。

  7. Microsoft Exchange Search Indexer サービスを再起動する   サービス MMC スナップインまたはシェルを使用して、Microsoft Exchange Search Indexer (MSExchangeSearch) サービスを停止してから、再起動します。

    1. [スタート] ボタンをクリックし、[管理ツール] をポイントします。次に、[サービス] をクリックします。

    2. [サービス] で、[Microsoft Exchange Search Indexer] を右クリックし、[停止] をクリックします。サービスが停止したら、サービスを再度右クリックして [開始] をクリックします。

  8. 検索カタログを再シードする   検索カタログが壊れている場合など、カタログの再シードが必要になる場合があります。検索カタログの再シードが必要になった場合は、Exchange Search によってアプリケーション イベント ログのエントリにログ記録されることで通知されます。検索カタログの再作成の詳細については、「検索カタログを再シードする」を参照してください。

 © 2010 Microsoft Corporation.All rights reserved.