【Windows】SQLServerトランザクションログの再作成について

以前、Microsoft SQL Server でデータベースのトランザクションログが破損してデータベースがおかしくなった際に修正した内容を記録しておきます。トランザクションログの再作成は、緊急の場合の手段としての方法になりますので、十分に検証を行った上で検討することをおすすめします。

スポンサーリンク

トランザクションログの再作成

以下で実施するトランザクションログの再作成の方法は、SQL Server Management Studio からクエリを実行する方法になります。

1) データベースを緊急モードに変更

トランザクションを再作成する対象のデータベース名を指定して、緊急モードへの変更を行います。

2) ログ以外の破損箇所の有無を確認

※この後データロスを許容する修正オプションを指定するため、他に破損している箇所がある場合は、失われる可能性があります。

3) トランザクションログファイルの再作成

以下のクエリを実行し、該当のデータベースのトランザクションログファイルを再作成します。

4) データベースの整合性チェックの実行

DBCC CheckDBにて、データベースの整合性チェックを実施します。
本作業によって、データも含めて破損している箇所がないか確認します。

※DBCC CheckDB の結果に問題がなければ、緊急モードを解除します。

5) データベースを緊急モードから解除

以下のクエリを実行し、緊急モードを解除します。

以上でトランザクションログの再作成は完了となります。