運用WebサイトにSQL Server 2008 R2 Standard(バージョン10.50.1600.1)を使用し、データベースとしてローカルホストにAdvanced Services(v10.50.1600.1)を使用するSQL Server Expressエディションを使用しています。
数日前にSQL Serverがクラッシュし、ローカルホストに新しい2008 R2 Expressバージョンをインストールする必要がありました。Expressエディションから取得したいくつかの古いバージョンを復元すると正常に.bak
機能しましたが、本番サーバーから取得したファイルからデータベースを復元しようとすると、次のエラーが発生します。
エラー:指定されたキャストは無効です。(SqlManagerUI)
コマンドを使用してデータベースを復元しようとすると
Use Master
Go
RESTORE DATABASE Publications
FROM DISK = 'C:\Publications.bak'
WITH MOVE 'Publications' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.mdf',--adjust path
MOVE 'AlPublications_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.ldf'
別のエラーが発生する
メッセージ3154、レベル16、状態4、行1
バックアップセットは、既存の「パブリケーション」データベース以外のデータベースのバックアップを保持します。
メッセージ3013、レベル16、状態1、行1
RESTORE DATABASEが異常終了しています。
バージョンをクロスチェックしました。下の画像に示すように、それらはすべて私に一致しているようです
以前は、データベースを標準バージョンからExpress Editionに復元できましたが、現在は失敗します。データベースを削除して再作成しようとしました。それも失敗します。
何が悪いのかわかりません。これについて助けていただければ幸いです
.bakファイルが破損している可能性があるため、問題は解決しました。別のファイルで試したところ、うまくいきました。