Summary: Exchange データベースが破損していたり、整合性が取れていなかったり、損傷していたりすると、Exchange デー タベースが予期せずクラッシュすることがあります。また、Exchange サービスが停止したり、データベースやログが保存されている記憶媒体の空き容量がなくなったり、十分でなくなったりした場合にもシャットダウンすることがあります。このような場合は、データベースを復元して再マウントする必要があります。これを行うには、高度なExchangeデータベース修復ソフトウェアを使用する必要がある場合もあります。
Exchange Server のデータベースクラッシュは、ユーザーのメールボックスへのアクセスやメールの送受信を妨げる深刻な問題です。解決しないまま放置すると、予期せぬダウンタイムやデータ損失につながる可能性があります。
これは、Exchangeサーバーの根本的な問題、または突然のシャットダウンやクラッシュ、マルウェアやウイルスの侵入、停電などの一般的な理由によって発生する可能性があります。
このブログでは、Exchange Server 2010、2013、2016、2019のデータベースの予期せぬログアウトを解決するお手伝いをします。
データベースコピーの予期せぬ解体時のエラーを修正しました。
Exchangeデータベースの予期しないログアウトが頻繁に発生する場合は、まずイベントビューアを確認してください。
アプリケーション」のソース MSExchangeIS でイベントを並べ替え、以下のように ID 1001、1002、または 4999 のエラーを検索します:
ログ名アプリケーション
ソース:MSExchangeIS
イベント ID:1001
タスクカテゴリー:一般
レベル:エラー
Microsoft Exchange Serverインフォメーションストアで内部ロジックエラーが発生しました。内部エラーのテキストは(メンテナンスの挿入を適用できません、インデックスが破損していますか?
ログ名アプリケーション
ソース:MSExchangeIS
イベント ID:1002
タスクカテゴリー:一般
レベル:エラー
未処理の例外(Microsoft.Exchange.Diagnostics.ExAssertException:ASSERT: メンテナンスインサートが適用できません。
ログ名アプリケーション
ソース:MSExchange 一般
イベント ID:4999
タスクカテゴリー:一般
レベル:エラー
プロセス ID:パラメータはE12, c-RTL-AMD64, 15.00.0712.024, M.E.Store.Worker, M.E.S.Storage.LazyIndexing,
M.E.S.S.L.LogicalIndex.HandleIndexCorruptionInternal, M.E.Diagnostics.ExAssertException, 213a, 15.00.0712.000。ErrorReportingEnabled:True
エラーが見つかった場合は、Microsoft Exchange Information Storeサービスがクラッシュまたは停止している可能性があります。
このような場合は、Windows+Rキーを押し、services.mscと入力してEnterキーを押します。Microsoft Exchange Information Storeサービスを検索します。最後に、サービスを右クリックし、[開始]または[再起動]を選択します。
次に、Exchange 管理シェルまたは Exchange 管理センター(EAC)の Web インターフェイスで Mount-Database コマンドレットを使用してデータベースをマウントします。
ただし、この問題が頻繁に発生する場合、またはメールボックスをエクスポートするたびに発生する場合は、Exchangeサーバーを修復するか、最新の累積更新プログラムに更新する必要があります。これにより、Exchangeデータベースが予期せず終了する問題が解決する可能性があります。
Exchangeデータベースが予期せず終了する問題を解決するために、以下に示す解決策を試すこともできます。
インデックスの無効化
また、インデックスの作成を停止してみることもできます。こうすることで、インデックスが破損しているかどうかをテストすることができます。この場合、データベースに影響を及ぼし、予期せぬキャンセルにつながる可能性があります。
インデックスを無効にするということは、すべての検索クエリが遅くなり、データベースのパフォーマンスに悪影響を及ぼすということです。
これを非アクティブにするには、Exchange 管理シェルで PowerShell コマンドレット Set-MailboxDatabase を使用します。
ただし、始める前にサーバーのパフォーマンスをチェックする必要があります。アップデートが最近インストールされたかどうかを確認し、それをリストアップします。また、ウイルス対策ソフトやバックアップソフトなどのサードパーティ製ソフトに変更がないか、そしてもちろんサーバーの一般的な状態もチェックしてください。
Set-MailboxDatabase "EX01DB01" -IndexEnabled $False
後でインデックスを再び有効にするには、上記のコマンドの最後に$Trueパラメータを付けて実行します($Falseに置き換えます)。
もう1つの方法は、Microsoft Exchange Searchサービスを停止することです。次のPowerShellコマンドレットを使用できます。
Stop-Service MSExchangeFastSearch Set-Service MSExchangeFastSearch -StartupType Disabled
これを元に戻すには、サービスコンソールを使用して開始を自動に設定するか、サービスを開始する必要があります。PowerShellでこれを行うには、次のようにします。
Set-Service MSExchangeFastSearch -StartupType Automatic Start-Service MSExchangeFastSearch
サービスコンソールを使用して、Microsoft Exchange Searchサービスを停止することもできます。自動的に起動しないように、停止マークを付けてください。
しばらく待ってから、問題が再び発生するかどうかを確認してください。
そうでない場合は、データベースのインデックスを再作成してみてください。これを行うには、Microsoft Exchange SearchサービスとMicrosoft Exchange Host Responsibleサービスを停止します。
次のステップは、既存のCIカタログフォルダを削除するか、別の場所に移動することです。
その後、以下の順序でサービスを再起動します:
- マイクロソフトExchange検索サービス
- Microsoft Exchangeホスト責任者
データベースのサイズやメールボックス/メールの数によっては、時間がかかる場合があります。
メールボックスを別のデータベースに移動
問題が解決しない場合は、メールボックスを別のデータベースに移動してみてください。たとえば、メールボックスを既存の別のデータベースに移動するか、メールボックスを移動するための新しいデータベースを作成します。
データベースが破損し、予期せぬキャンセルにつながる可能性があるためです。
Exchange Server のネイティブツール EseUtil を使用して、破損したデータベースを修復し、メールボックスを新規または既存のデータベースに移動することができます。
EseUtil をデータベースに対して実行すると、修復回数のパラメータが 0 から 1 に増加するため、このシフトは重要です。
もしあなたがマイクロソフトのサポートに問い合わせたことがあり、その際に数値が0より大きいことが判明した場合、彼らは問題を解決しようとはせず、別のデータベースに切り替えることを勧めるでしょう。
以下の手順に従ってください:
- 以下のコマンドを実行して、データベースのステータスを確認します。
EseUtil /mh <データベースパス.edb>。
- Status: 値の見通しを確認します。データベースのステータスが Clean Shutdown の場合は、メールボックスの移動をスキップできます。ステータスが Dirty Shutdown の場合は、以下のコマンドを実行してソフト・データ・リカバリを実行します。
Eseutil /r E01 /l <ログへのパス>/d <データベースへのパス
- 以下のコマンドでデータベースの状態を再度確認してください。
EseUtil /mh <データベースパス.edb>。
- ステータスがクリーン・シャットダウンと表示されている場合は、EACでデータベースをマウントし、以下の手順で復元されたデータベースから新しいデータベースにメールボックスを移動できます。
注: ステータスがダーティシャットダウンのままであれば、データ復旧 (EseUtil /p) を実行できます。ただし、復元不可能なデータが削除されるため、データの損失につながる可能性があります。その代わりに、Exchange Recovery ソフトウェアを使用して、Exchange Server の古いデータベースから新しいデータベースにすべてのメールボックスを復元してください。
別のデータベースに切り替えるには、次のようにします:
- EACを開き、Receiverをクリックし、Migrationをクリックします。
- ボタンをクリックし、「別のデータベースに移動」をクリックします。
- 移動するユーザーを追加し、[次へ]をクリックします。
- 移行の名前を入力し、メールボックスとアーカイブのターゲットデータベースを選択します。
- また、メールボックスのみ、またはアーカイブ(利用可能な場合)を選択します。
- エラー項目の制限を入力します。このリミットは、データベースに10個(デフォルト)のエラーが見つかった場合にプロセスが停止することを意味します。
次に、移行完了時に通知レポートを受け取る受信者を選択します。これが完了したら、すぐに移行を開始します。EACで進捗状況を確認するか、電子メールで通知を受け取るまで待つことができます。
同期(移行)が完了するまで待ちます。メールボックスの移動が完了したら、メールボックスを確認し、予期せず登録解除されたデータベースを削除することができます。
最終的な検討事項
メールボックスデータベースの問題が予期せず停止したため、データベースを確認し、必要であれば復元してから、メールボックスを新しいデータベースに小分けして移行する必要があります。これは、問題のあるデータベースが同期中に予期せず終了した場合に移行プロセスがキャンセルされるのを防ぐために重要です。この場合、プロセスを再起動する必要があります。
あるいは、New-MailboxExportRequest を使用して、予期せず解体されたデータベースからメールボックスを PST ファイルにエクスポートします。次に、New-MailboxImportRequest を使用して、それらを新しいデータベースまたは別のデータベースにインポートします。
しかし、これは、あなたが遭遇するかもしれない問題とは別に、時間のかかる作業になる可能性があります。
データベースを完全に修復し、破損したExchangeデータベースから新しいデータベースにメールボックスを移動する最善の方法は、Stellar Repair for ExchangeのようなExchange Server復旧ソフトウェアを使用することです。
このソフトウェアは、損傷や破損の程度にかかわらず、任意のEDBファイルを開くことができます。それはあなたが迅速にメールボックスを復元し、新しいPSTファイルに転送するのに役立ちます。また、ライブのExchange ServerまたはOffice 354テナント上の新しいデータベースに直接エクスポートすることもできます。プログラムは自動的にソースと宛先のメールボックスをマッピングし、より高速なエクスポートのための並列処理技術を使用しています。