データベース回復管理ツールのタイムアウト
Exchange Team の島崎です。
データベースのトラブルが発生し、データを復旧する状況において、データ復旧を支援するツールとして [データベース回復管理] ツールがあります。
このツールを使用することにより、回復用ストレージ グループの作成などの手順をツールを使用することにより、データ回復の際に陥りやすいトラブルを未然に防ぎ、データの回復時間の短縮を図ることができます。(詳細は下記のサイトをご覧ください。)
Title : データベース回復管理ツールとデータベース トラブルシューティング ツール
https://technet.microsoft.com/ja-jp/library/aa998611.aspx
このデータベース回復管理 (EXDRA) を使用して、"メールボックス内容の結合またはコピー" を実施した場合に、1 メールボックス辺りのデータ量が多い場合、次のエラーにより失敗することがあります。(下記は、C:\Program Files\Microsoft\Exchange Server\MigrationLogs フォルダの Restore-Mailbox<日時>.log からの抜粋です。)
------------------------
[2009/11/30 21:22:46] [0] [ERROR] Error was found for Administrator ( Administrator@extest.microsoft.com ) because: 次の手順でエラーが発生しました。メッセージを移動しています。 次のエラーのため、移動先のメールボックス ストアにメッセージをコピーできませんでした。処理が取り消されました。, error code: -1056749164
------------------------
1 メールボックス辺りの復旧するデータ量が多いと、データベース回復管理からデータの結合 (またはコピー) を実行した場合にタイムアウトによりエラーとなるためです。検証環境では 10 分程度で上記のエラーが発生していました。
このタイムアウトは、Exchange 2007 Service Pack 2 では 14400 秒 (4 時間) に変更されています。
対処方法
このような場合には、Exchange 管理シェルから Restore-Mailbox を実行するか、ExDRA.Config.xml よりタイムアウト値を伸ばすことで回避できます。
・ 方法1 : Exchange 管理シェルから Restore-Mailbox を実行する
1. Exchange 管理シェルより下記を実行します。
- コピー
Restore-Mailbox -RSGMailbox "< RSG 上のユーザー>" -RSGDatabase "<回復用ストレージ グループ名>\<データベース名>" -Identity "<エクスポート先ユーザー>" -TargetFolder "<ターゲット フォルダ名>"
- 結合
Restore-Mailbox -RSGDatabase "<回復用ストレージ グループ名>\<データベース名>" -Identity "<結合ユーザー>"
・ 方法 2 : ExDRA.Config.xml よりタイムアウト値を伸ばす
1. 日本語を使用している場合には、C:\Program Files\Microsoft\Exchange Server\Bin\ja フォルダにある ExDRA.Config.xml をバックアップのためコピーします。
2. ExDRA.Config.xml をメモ帳で開きます。
3. "Restore-Mailbox" を検索します。
4. 下記のように最後に Timeout="秒数" を追加し、保存します。 (設定箇所は 2 箇所あります。)
- 1 箇所目
(変更前)
<Object Type="MonadCommand" Key1="restore-mailbox -Identity %MatchAlias% -rsgdatabase "%EXSERVER%\%RSGName%\%RDBName%" -rsgmailbox "%LegacyDN%" -TargetFolder %TargetFolder% %OptionString%">
(変更後)
<Object Type="MonadCommand" Key1="restore-mailbox -Identity %MatchAlias% -rsgdatabase "%EXSERVER%\%RSGName%\%RDBName%" -rsgmailbox "%LegacyDN%" -TargetFolder %TargetFolder% %OptionString%" Timeout="14400">
- 2 箇所目
(変更前)
<Object Type="MonadCommand" Key1="restore-mailbox -Identity "%LegacyDN%" -rsgdatabase "%EXSERVER%\%RSGName%\%RDBName%" %OptionString%">
(変更後)
<Object Type="MonadCommand" Key1="restore-mailbox -Identity "%LegacyDN%" -rsgdatabase "%EXSERVER%\%RSGName%\%RDBName%" %OptionString%" Timeout="14400">
5. データベース回復管理を起動し、メールボックスの結合 (またはコピー) を実行します。
- 補足
Exchange 2007 Service Pack 1 ロールアップ 4 までには次の問題もありますので、データベース回復管理を利用される場合には、ぜひ最新のサービス パック、ロールアップを適用した環境でご活用ください。
文書番号 : 951747
Title : An error occurs when you use the Export-mailbox or Restore-mailbox command to migrate certain mailboxes on Exchange Server 2007: "error code -1056749164"
https://support.microsoft.com/kb/951747/en-us
文書番号 : 946958
Title : The operation is not successful when you run the "Restore-Mailbox" cmdlet, and you receive an error message in Exchange Server 2007 Service Pack 1
https://support.microsoft.com/kb/946958/en-us
文書番号 : 949186
Title : When you try to run the Restore-mailbox cmdlet on a server that is running Exchange Server 2007, you receive an error message
https://support.microsoft.com/kb/949186/en-us