none
SQLServer2005での整合性チェックエラーについて RRS feed

  • 質問

  • 現在SQLServer2005のメンテナンスで整合性チェックを行っているのですが、下記のように3つのエラーが発生してしまいます。

    「DBCC CHECKDB (データベース名) WITH no_infomsgs executed by pcuser found 3 errors and repaired 0 errors.

    Elapsed time: 0 hours 0 minutes 25 seconds.

    内部  データベース スナップショットの分割点 LSN 0000d4aa:0000363f:0001

    で、最初の LSN 0000d4aa:0000363e:0001 です。このメッセージは情報提供だけを目的としています。ユーザー操作は不要です。」

    まずどのような所を調査して、対応したらよいのか全く分からずに困ってしまっております。

    もし同じようなご経験のある方いらっしゃいましたらご教授頂けると幸いです。

    2012年9月6日 2:54

回答

  • 内部  データベース スナップショットの分割点 LSN 0000d4aa:0000363f:0001

    で、最初の LSN 0000d4aa:0000363e:0001 です。このメッセージは情報提供だけを目的としています。ユーザー操作は不要です。」

    上の部分は、データベースが SINGLE_USER モードでない状態で DBCC CHECKDB コマンドを実行したことにより発生する情報メッセージですね。
    こちらについては、「ユーザー操作は不要です」とある通り、何もしなくて構いません。
    もし、このメッセージを出したくないのであれば、DBCC CHECKDB コマンドを実行する前に、データベースを SINGLE_USER モードに変更し、
    DBCC CHECKDB コマンドの実行後に MULTI_USER モードに戻すようにしてやれば良いでしょう。

    DBCC CHECKDB (データベース名) WITH no_infomsgs executed by pcuser found 3 errors and repaired 0 errors.

    Elapsed time: 0 hours 0 minutes 25 seconds.

    こちらについてはエラーが出ていますので、エラーが出ていない時に取得した最新のバックアップから、対象のデータベースを復旧してやる必要があると思います。
    もしバックアップが無いようならば、DBCC CHECKDB に REPAIR_REBUILD もしくは REPAIR_ALLOW_DATA_LOSS のオプションを加えて実行する方法もありますが、
    REPAIR_ALLOW_DATA_LOSS の場合はデータの損失が発生する可能性がありますので、事前にバックアップを取得してから実行することをお勧めします。
    ( エラーメッセージの最後に どちらを使うべきか出力されていたりするかもしれません )

    実際には復旧だけではなくて、なぜ整合性エラーが発生したのか (e.g. HDD の故障、ファイルシステムの破損、etc. ) も調査したほうが良いですね。
    でないと、HDD 故障などハードウェアに原因がある場合ならバックアップから復旧しても再発してしまうと思いますので。

    • 回答の候補に設定 佐伯玲 2012年9月10日 1:39
    • 回答としてマーク 佐伯玲 2012年9月11日 6:09
    2012年9月6日 10:06

すべての返信

  • 内部  データベース スナップショットの分割点 LSN 0000d4aa:0000363f:0001

    で、最初の LSN 0000d4aa:0000363e:0001 です。このメッセージは情報提供だけを目的としています。ユーザー操作は不要です。」

    上の部分は、データベースが SINGLE_USER モードでない状態で DBCC CHECKDB コマンドを実行したことにより発生する情報メッセージですね。
    こちらについては、「ユーザー操作は不要です」とある通り、何もしなくて構いません。
    もし、このメッセージを出したくないのであれば、DBCC CHECKDB コマンドを実行する前に、データベースを SINGLE_USER モードに変更し、
    DBCC CHECKDB コマンドの実行後に MULTI_USER モードに戻すようにしてやれば良いでしょう。

    DBCC CHECKDB (データベース名) WITH no_infomsgs executed by pcuser found 3 errors and repaired 0 errors.

    Elapsed time: 0 hours 0 minutes 25 seconds.

    こちらについてはエラーが出ていますので、エラーが出ていない時に取得した最新のバックアップから、対象のデータベースを復旧してやる必要があると思います。
    もしバックアップが無いようならば、DBCC CHECKDB に REPAIR_REBUILD もしくは REPAIR_ALLOW_DATA_LOSS のオプションを加えて実行する方法もありますが、
    REPAIR_ALLOW_DATA_LOSS の場合はデータの損失が発生する可能性がありますので、事前にバックアップを取得してから実行することをお勧めします。
    ( エラーメッセージの最後に どちらを使うべきか出力されていたりするかもしれません )

    実際には復旧だけではなくて、なぜ整合性エラーが発生したのか (e.g. HDD の故障、ファイルシステムの破損、etc. ) も調査したほうが良いですね。
    でないと、HDD 故障などハードウェアに原因がある場合ならバックアップから復旧しても再発してしまうと思いますので。

    • 回答の候補に設定 佐伯玲 2012年9月10日 1:39
    • 回答としてマーク 佐伯玲 2012年9月11日 6:09
    2012年9月6日 10:06
  • とても参考になるご意見ありがとうございました。

    ご教授頂いた内容で早速試してみたいと思います。

    ありがとうございました。

    2012年9月7日 1:00