SQL Server 2008 R2を持っています。
バックアップが失敗したというメールを受け取り、SQLログビューアを開いて閲覧を開始しました。そして、私はこれらの2つのエラーを何度も見つけました。
エラー1:
Date 31-01-2013 13:20:30
Log SQL Server (Current - 01-02-2013 05:13:00)
Source spid20s
Message Error: 9001, Severity: 21, State: 1.
エラー2:
Date 31-01-2013 13:20:30
Log SQL Server (Current - 01-02-2013 05:13:00)
Source spid20s
Message
The log for database 'DB_NAME' is not available. Check the event log for related error messages. Resolve any errors and restart the database.
少しグーグルで調べた後、DBまたはログファイルが破損している可能性があることをエラーが示すことを何度か読みました。 DBCC CHECKDB 'DB_NAME'
を実行することで確認できることを確認したので、実行しました。出力の最後の行は次のとおりです。
CHECKDB found 0 allocation errors and 0 consistency errors in database 'DB_NAME'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
出力は、DBが破損していないことを示しています。しかし、ログファイルはまだ壊れているのでしょうか?
また、1つの解決策は、「緊急モードの修復」と呼ばれるものを実行して、破損したファイルを修正する可能性があることも読みました。しかし、一部のユーザーはそれを推奨しませんでした。
別の解決策は、ログファイルを完全に削除してから、新しいログファイルを作成することです。
これらの現象は、データベース設定のAutoCloseがオンになっているときに発生することがあります。それを非アクティブにして、再試行してください。少し前に、SharePoint Foundation 2010データベースインスタンスを使用して2008R2 Express Editionで同じエラーが発生しました。私は調査し、例えば見つけました:
その後、「AutoClose」をオフに変更すると、問題は解決しました。その前に、影響を受けたデータベースをオフラインにして再度オンラインにする必要がありました。
エラーは、スケジュールされたジョブがDBCC CHECKDBを実行するたびに発生しました。手動で開始したデータベースのチェックでは、エラーは表示されませんでした。