MSSQLSERVER_8974
適用対象: SQL Server
詳細
属性 | 値 |
---|---|
製品名 | SQL Server |
イベント ID | 8974 |
イベント ソース | MSSQLSERVER |
コンポーネント | SQLEngine |
シンボル名 | DBCC3_OFF_ROW_DATA_NODE_HAS_TWO_PARENTS |
メッセージ テキスト | テーブル エラー : オブジェクト ID O_ID、インデックス ID I_ID、パーティション ID PN_ID、アロケーション ユニット ID A_ID (型 TYPE)。 ページ P_ID1、スロット S_ID1、テキスト ID TEXT_ID の行以外のデータ ノードが、ページ P_ID2、スロット S_ID2 とページ P_ID3、スロット P_ID3 によって指されています。 |
説明
行外のデータ ノードが、2 件のデータ レコードまたはインデックス レコードで、子ノードの一覧に含まれています。 各ノードに対して可能な親ノードは 1 つだけです。
ユーザーの操作
ハードウェア障害を調査する
ハードウェアの診断を実行し、問題があれば修正します。 また、Microsoft Windows のシステム ログとアプリケーション ログと SQL Server エラー ログを調べて、ハードウェア障害の結果としてエラーが発生したかどうかを確認します。 ログに記録されているハードウェアに関する問題があれば、それを修正します。
データ破損の問題が解決しない場合は、ハードウェア コンポーネントを他のものと交換し、問題の原因を特定するようにしてください。 システムで、ディスク コントローラーの書き込みキャッシュが有効になっていないことを確認します。 書き込みキャッシュが問題と思われる場合は、ハードウェア ベンダーにお問い合わせください。
それでも問題が解決しない場合は、新しいハードウェア システムの導入をご検討ください。 導入の際には、ディスク ドライブの再フォーマットとオペレーティング システムの再インストールが必要になる場合があります。
バックアップから復元する
問題がハードウェアに関するものではなく、また既知のクリーン バックアップがある場合は、そのバックアップを使用してデータベースを復元します。
DBCC CHECKDB の実行
クリーン バックアップがない場合には、REPAIR 句を付けずに DBCC CHECKDB を実行して破損の程度を調べます。 DBCC CHECKDB によって使用が推奨される REPAIR 句が表示されたら、 適切な REPAIR 句を付けて DBCC CHECKDB を実行し、破損を修復します。
注意事項
REPAIR 句を付けて DBCC CHECKDB を実行した場合にデータにどのような影響があるか確信がない場合は、ステートメントを実行する前に購入元にお問い合わせください。
いずれかの REPAIR 句を付けて DBCC CHECKDB を実行しても問題が解決しない場合は、購入元にお問い合わせください。
REPAIR オプションの実行結果
ページ P_ID1 にある行以外のデータ ノードが削除され、ページ P_ID2 および P_ID3 にある参照がどちらも削除されます。
注意事項
この修復を実行すると、データが失われることがあります。