次の方法で共有


MSSQLSERVER_2577

詳細

製品名

SQL Server

製品バージョン

10.50

製品ビルド番号

 

イベント ID

2577

イベント ソース

MSSQLSERVER

コンポーネント

SQLEngine

シンボル名

DBCC_IAM_CHAIN_SEQUENCE_OUT_OF_ORDER

メッセージ テキスト

オブジェクト ID O_ID、インデックス ID I_ID、パーティション ID PN_ID、アロケーション ユニット ID A_ID (型 TYPE) の IAM (Index Allocation Map) チェーン内のチェーン シーケンス番号が間違っています。シーケンス番号 SEQUENCE1 のページ P_ID1 がシーケンス番号 SEQUENCE2 のページ P_ID2 を指しています。

説明

個々の IAM (Index Allocation Map) ページにはすべて、シーケンス番号が付けられています。シーケンス番号は、IAM チェーン内における IAM ページの位置を表します。シーケンス番号には、IAM ページごとに値が 1 ずつ増加するという規則があります。IAM ページ P_ID2 には、この規則に従わないシーケンス番号が付けられています。

ユーザーのアクション

ハードウェア障害の調査

ハードウェアの診断を実行し、問題があれば修正します。また、Microsoft Windows のシステム ログとアプリケーション ログ、および SQL Server のエラー ログを調査し、ハードウェア障害の結果としてエラーが発生しているかどうかを確認します。ハードウェア関連の問題がログに記載されている場合は、それを修正します。

データ破損の問題が解決しない場合は、ハードウェア コンポーネントを他のものと交換し、問題の原因を特定するようにしてください。システムで、ディスク コントローラーの書き込みキャッシュが有効になっていないことを確認します。書き込みキャッシュが問題であると思われる場合は、ハードウェアの製造元にお問い合わせください。

それでも問題が解決しない場合は、新しいハードウェア システムの導入をご検討ください。導入の際には、ディスク ドライブの再フォーマットとオペレーティング システムの再インストールが必要になる場合があります。

バックアップから復元する

問題がハードウェアに関するものではなく、また既知のクリーン バックアップがある場合は、そのバックアップを使用してデータベースを復元します。

DBCC CHECKDB の実行

クリーン バックアップがない場合には、REPAIR 句を付けずに DBCC CHECKDB を実行して破損の程度を調べます。DBCC CHECKDB によって使用が推奨される REPAIR 句が表示されたら、適切な REPAIR 句を付けて DBCC CHECKDB を実行し、破損を修復します。

注記注意

REPAIR 句を付けて DBCC CHECKDB を実行した場合にデータにどのような影響があるか確信がない場合は、ステートメントを実行する前に購入元にお問い合わせください。

いずれかの REPAIR 句を付けて DBCC CHECKDB を実行しても問題が解決しない場合は、購入元にお問い合わせください。

REPAIR オプションの実行結果

REPAIR を実行すると、IAM チェーンが再構築されます。REPAIR はまず、既存の IAM チェーンを半分ずつに分割します。チェーンの前半は IAM ページ P_ID1 で終わります。P_ID1 ページの次ページ ポインターは、(0:0) に設定されます。チェーンの後半は IAM ページ P_ID2 から始まります。P_ID2 ページの前ページ ポインターは、(0:0) に設定されます。

次に REPAIR は、この 2 つのチェーンを接続し、IAM チェーンのシーケンス番号を再生成します。修復できない IAM ページがあれば、その割り当ては解除されます。

注記注意

この修復を実行すると、データが失われることがあります。