クライアントを新しいサーバーに移行しています。古いサーバーにはSQL Server 2005がインストールされています。差分バックアップを実行しようとしましたが、LSNチェーンが壊れているというエラーを受け取りました。
私がこれを何度も行ったことに注意してください。フルバックアップはNORECOVERY
を使用して新しいサーバーに復元され、差分バックアップを復元しようとすると、壊れたLSNチェーンに関するエラーが発生します。
私はテストデータベースを作成し、同じ結果を得ました。次に、テストデータベースファイルをSQL Server 2008 R2を実行しているサーバーに移動しました。バックアップは正しく復元されました。
SQL Server 2005からの差分バックアップがSQL Server 2012で正しく復元されない理由を誰かが知っていますか?そして、どうすればこれを修正できますか?
SQL 2005からSQL 2012への差分とフルの復元に問題はありません。バックアップファイルに互換性があることを確認します。これを行うには、RESTORE HEADERONLY
コマンドを実行して、完全バックアップのFirstLSN値を差分のDifferentialBaseLSNと比較します。
restore headeronly
from disk='X:\BackupFiles\foo.bak'
これらの値が一致しない場合は、適切な完全バックアップを行う必要があります。
SQL Server 2005からの差分バックアップがSQL Server 2012で正しく復元されない理由を誰かが知っていますか?そして、どうすればこれを修正できますか?
BOLから :
SQL Server 2012では、SQL Server 2005以降のバージョンを使用して作成されたデータベースバックアップからユーザーデータベースを復元できます。ただし、 SQL Server 2005またはSQL Server 2008を使用して作成されたマスター、モデル、およびmsdbは、SQL Server 2012では復元できません。
私はそれを試しました、そしてそれはBOLで述べられたように働きます。
Thomasが述べたように、差分バックアップを取った後、誰かが完全バックアップを取った可能性があります。