DBCC CHECKB によって報告されるデータベース整合性のエラーをトラブルシューティングする方法

文書翻訳 文書翻訳
文書番号: 2015748 - 対象製品
すべて展開する | すべて折りたたむ

現象

CHECKTABLE と同様のような他のコマンド (または複数) の DBCC CHECKDB を実行すると、次のようなメッセージが、SQL Server のエラー ログに書き込まれます。

2010-03-31 22:07:06.34 spid53 DBCC CHECKDB (mydb) 15 のエラーが見つかりました、MYDOMAIN\theuser によって実行され、エラーを修復します。経過時間: 0 時 0 分 0 秒です。内部データベース スナップショットは、分割ポイント LSN = 00000026:0000089 d: 0001 と最初の LSN = 00000026:0000089 c: 0001。これは情報メッセージのみです。ユーザーの操作は必要ありません。

多数のデータベース一貫性エラーが見つかりましたし、数は修復されました (修復オプションは、コマンドで使用された) 場合、このメッセージは示しています。このメッセージはイベント Id とメッセージ レベルの情報として、Windows アプリケーション イベント ログに書き込まれますも (たとえこのメッセージは情報メッセージ レベルのエラーが報告されます) 8957 を =。

「内部データベース スナップショットを...」で始まるメッセージ内の情報は、オンラインデータベースは SINGLE_USER モードでない場合は DBCC CHECKDB が実行された場合にのみ表示されます。これは、オンラインの DBCC CHECKDB の一連の一貫性を確認するには、データを表示する、内部データベースのスナップショットが使用されるためです。

この資料は、各エラーが報告される場合は、DBCC CHECKDB は、一般的なアプローチではなくによって報告されたエラーのトラブルシューティングを行う方法については説明しません。CHECKDB への参照をこの資料で具体的に記載されている場合を除き、DBCC CHECKTABLE と CHECKFILEGROUP も適用されます。

原因

DBCC CHECKDB は、データベース ・ ページ、行、アロケーション ページ、インデックスの関係、システム テーブルの参照整合性、およびその他の構造のチェックの物理的および論理的一貫性を調べます。(選択したオプション) に応じていずれかのチェックが失敗した場合は、エラーは、コマンドの一部として報告されます。

これらの問題の原因は異なるファイル システムの破損、システムのハードウェアの問題を基に、ドライバーの問題、メモリ、または、SQL Server エンジンの問題で、破損したページです。報告されるエラーの原因を特定する方法の詳細については、解像度のセクションを読みます。

解決方法

DBCC CHECKDB の整合性のエラーを報告する場合は、1 つは、最適なソリューションは、既知の正常なバックアップから復元することです。しかし場合は、バックアップから復元することはできません、CHECKDB はエラーを修復するための機能。ファイル ・ システムやハードウェアなどのシステム レベルの問題によってこれらの問題が発生する場合の復元または修復を実行する前に最初にこれらを修正するを勧めします。

すべてのエラーを修復するために必要である、最小の修復オプションを示すために、DBCC CHECKDB を実行する際の推奨事項が提供されます。これらのメッセージは、次のようになります。

CHECKDB がデータベース 'mydb' のアロケーション エラーと 15 の一貫性エラーが見つかりました。
repair_allow_data_lossは DBCC CHECKDB (mydb で検出されたエラーを修復の最小レベルです。

修復の推奨事項は、checkdb エラーをすべて解決しようとする修復の最低レベルです。この修復オプションはすべてのエラーを修正して実際にいるわけではありません。さらに、報告されたすべてのエラーはこのレベルの修復のエラーを解決する必要があります。これは、repair_allow_data_loss お勧め CHECKDB で報告されたすべてのエラーはデータが失われることを意味します。かどうか、エラーの解決方法になりますデータが失われるを確認するのには修復を実行してください。絞り込む各テーブルの修復レベルがあることを 1 つの方法は、エラーの任意のテーブルに対して DBCC CHECKTABLE を使用します。これにより、最小限のレベルの指定されたテーブルの修復が表示されます。

データベースの整合性エラーが発生した理由の原因を検索するには、これらの方法を検討してください。

  • システム レベル、ドライバー、またはディスクは、Windows システム イベント ログを確認して関連のエラー
  • Chkdsk コマンドで、ファイル システムの整合性をチェックします。
  • コンピューターやディスク システムのため、ハードウェアの製造元によって提供される診断ツールを実行します。
  • 操作、ハードウェアの製造元またはデバイスの製造元を確認します。
    • SQL Server の I/O 要件をハードウェア ・ デバイスと構成の確認します。
    • デバイス ドライバーとその他の I/O パスのすべてのデバイスのサポートのソフトウェア コンポーネントが更新されます。
  • 一貫性エラーが報告されるデータベースと同じドライブ上のようなSQLIOSimユーティリティを使用してください。SQLIOSim はディスク システムの I/O の整合性をテストするには、SQL Server エンジンの独立したツールです。SQLIOSim SQL Server 2008 に付属していない reuiqre をダウンロードすることに注意してください。
  • SQL Server のアクセス違反などによって報告されたエラーを確認します。この種の問題が生じる場合がありますデータベースが破損されるので最初にこれらのエラーを解決することを確認します。
  • データベースは、チェックサムの PAGE_VERIFY オプションを使用していることを確認します。チェックサム ・ エラーが報告される場合は、インジケーターの整合性は SQL Server が書き込まれた後にエラーが発生したディスクにページをディスク システムを徹底的にチェックする必要があるためにです。チェックサム ・ エラーの詳細についてSQL Server のメッセージ 824 のトラブルシューティングを行う方法を参照してください。
  • エラー ログ メッセージ 832 エラーを探します。これらは、アイコンがページを中にする前にキャッシュが破損しているディスクに書き込まれました。詳細については、 Msg の 832 で SQL Server のトラブルシューティングを行う方法を参照してください。
  • (Checkdb エラーなし) の「クリーン」とエラーが発生したときに時間にまたがるトランザクション ログのバックアップがわかっていることは、データベースのバックアップを復元しようとしてください。ことができます「再生」で、この問題の場合、「クリーンな」のデータベースのバックアップ トランザクションを復元するをログに記録し Microsoft テクニカル サポートに問い合わせて。
  • 純度のデータのエラーを挿入または SQL Server テーブルに無効なデータの更新、アプリケーションに問題があることができます。エラー データの純度をトラブルシューティングする方法については、次の資料を参照してくださいSQL server 2005 での DBCC エラー 2570 のトラブルシューティング

詳細

DBCC CHECKDB コマンドを実行する方法についての情報とオプションの構文については、 DBCC CHECKDB コマンドで、SQL Server Books Online のトピックを参照してください。

CHECKDB で、エラーが発生した場合は、次のように追加のメッセージ エラー報告のために、エラー ログに報告されます。

2010-03-31 22:07:06.34 spid53 使用 'dbghelp.dll' バージョン '4.0.5'
2010-03-31 22:07:06.35 spid53 * * スレッド - spid をダンプ = 0、EC = 0x00000000855F5EB0
2010-03-31 22:07:06.35 spid53。 C:\Program ファイル SQL Server\MSSQL10 に送信されるスタックをダンプします。SQL2008\MSSQL\LOG\SQLDump0012.txt
2010-03-31 22:07:06.35 spid53      * *******************************************************************************
2010-03-31 22:07:06.35 spid53 *
2010-03-31 22:07:06.35 spid53 * 開始スタックをダンプします。
2010-03-31 22:07:06.35 spid53 * 10/03/31 22時 07分: 06 spid 53
2010-03-31 22:07:06.35 spid53 *
2010-03-31 22:07:06.35 spid53 * DBCC データベースの破損
2010-03-31 22:07:06.35 spid53 *
2010-03-31 22:07:06.35 spid53 * 入力バッファー 84 バイト -
2010-03-31 22:07:06.35 spid53 * dbcc checkdb(mydb)
2010-03-31 22:07:06.35 spid53 *
2010-03-31 22:07:06.35 spid53      * *******************************************************************************
2010-03-31 22:07:06.35 spid53      * -------------------------------------------------------------------------------
2010-03-31 22:07:06.35 spid53 * 短いスタック ダンプ
2010-03-31 22:07:06.38 spid53 スタック ダンプの署名が 0x00000000000001E8
2010-03-31 22:07:07.42 spid53 の外部のダンプ プロセスはコード 0x20002001 を返します。
エラー情報は、ワトソン エラー レポートを送信されました。

エラーを報告するために使用されるファイルには、SQLDump < nnn > .txt ファイルが含まれます。このファイルは XML 形式で CHECKDB から検出されたエラーの一覧が含まれている履歴のために有用なことができます。

確認する最後の時間では、DBCC CHECKDB の実行時に (、最後既知クリーン CHECKDB) データベースの検出、エラーのない、チェックは SQL Server のエラー ログをデータベースやシステム データベースに対して、次のようなメッセージ (このメッセージは情報のレベルの Windows アプリケーション イベント ログにイベント Id とメッセージとして書き込まれます = 17573)。

2010-04-01 10:13:59.80 2010年-03-31 22:11:11.417 (現地時間) でエラーのないデータベース 'マスター' の spid7s CHECKDB が終了しました。これは情報メッセージのみです。ユーザーの操作は必要ありません。

注意 : これは、マイクロソフトのサポート組織内で直接作成された "緊急公開" の資料です。 この資料には、確認中の問題に関する現状ベースの情報が記載されています。 情報提供のスピードを優先するため、資料には誤植が含まれる可能性があり、予告なしに随時改定される場合があります。 その他の考慮事項については、使用条件を参照してください。

プロパティ

文書番号: 2015748 - 最終更新日: 2014年5月7日 - リビジョン: 1.0
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • Microsoft SQL Server 2014 Developer
  • Microsoft SQL Server 2014 Enterprise
  • Microsoft SQL Server 2014 Express
  • Microsoft SQL Server 2014 Standard
  • Microsoft SQL Server 2014 Web
キーワード:?
kbmt KB2015748 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:2015748
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com