SQL Serverの「疑わしい」データベースですか?


40

としてマークされているデータベースがある場合はどうしますSuspectか?

最後のバックアップから復元しますか?

お知らせ下さい。

回答:


41

まず、そのデータベースをデタッチしないようにしてください。

最後の既知のgoodbackupからの復元は問題ありません。そうでない場合は、EMERGENCY修復モードを使用する必要があります(SQL 2005以降を実行していると想定しています)。以下は、ポールランダルからのこの件に関する投稿です。アクションを開始する前に両方を読んでください。

SUSPECTデータベースの作成、デタッチ、再アタッチ、および修正

緊急モードの修復:非常に最後の手段


5

はい、大丈夫です。

一般的には、ファイルが破損または欠落している、またはディスクエラーなどが発生していることを意味します(不良セクタが原因であることがわかりました)。

私の手順:

  • すべてのバックアップがそこにあることを確認してください
  • SQL Serverをシャットダウンします
  • SQL Serverが使用するディスクをchkdskします(もちろんCではなく):

編集:答えを明確にします

  • データが重要な場合、バックアップを作成します
  • 修理や緊急モードをいじりながらのダウンタイムは長すぎます

5

データファイルまたはログファイルを失った場合の疑わしいデータベースの2つのケースについて、これに関するいくつかのガイダンスを作成しました。以下をお読みください:


5
だからここにある:あなたが投稿するすべてがリンクである場合、スタック交換は動作しません。私たちはあなたがする必要があることは、リンクの内容を要約することである、または私はちょうどあなたの答えを削除するように強制されます(そして、あなたを失う担当者、どちらも私たちのことは、これが起こることを望んでいない)
jcolebrand

4

あなたの質問から、バックアップがあるようです。適切なバックアップからDBを復元することは、DBを動作可能にし、疑わしい状態から抜け出すための最も簡単で最速の方法です。


5
ただし、トランザクションログがないと、データが失われます。
mrdenny

0

私の最初のアドバイスは次のとおりです。疑わしいデータベースをデタッチしないでください。更新されたバックアップからデータベースを復元すると役立ちます。バックアップが利用できない場合や問題が発生した場合、EMERGENCYモードが役立ちます。

データベースを緊急モードに設定します。

ALTER DATABASE DB_NAME SET EMERGENCY

次に、これとデータベースの不整合を確認します。

DBCC CHECKDB (‘DB_NAME’)

DBCC CHECKDB Repairは、データ損失オプションを許可する最後の手段です。その結果、データが失われる可能性があるため、実行することはお勧めしません。

リファレンス1リファレンス2も確認してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.