dev(Windows Server 2008上のSQL Server 2005)にprod(Windows Server 2003上のSQL Server 2000)に移動する必要があるデータベースがあります。私のプロセスは次のとおりです。
- 開発者にログインし、SQL Server Management Studioを開きます
- データベースを右クリック| タスク| バックアップ。すべてのデフォルトオプションを保持します(フルバックアップなど)
- .bakファイルをローカルにprod(ネットワークドライブなし)に移動し、prodにログインして、SQL Server Enterprise Managerを開きます。
- [データベース]ノードを右クリックします| すべてのタスク| データベースを復元します。
- データベースとして復元を変更して、同じデータベース名を反映させます。
- 「デバイスから」ラジオボタンをクリックします。「デバイスの選択」をクリックします
- [復元元:追加...]をクリックし、.bakファイルを参照します(小さい-6MBのみ)
これでデータベースを復元する準備ができたので、[OK]をクリックすると、次のエラーが表示されます。
「デバイス「E:... bak」のメディアファミリの形式が正しくありません。SQLServerはこのメディアファミリを処理できません。RESTOREDATABASEは異常終了します。」
このエラーはすぐに発生します。
私はこれのいくつかの異なるバリエーションを試しました-異なるdb名とログファイル名(元の場所)でdevマシンにdbを復元し、前にファイルへの同じ物理パスで空のデータベースを作成し、そこに復元しようとしましたprodにアップロードする前に、いくつかの異なる.bakファイルを作成し、それらが検証されていることを確認します。実際、.mdfファイルと.ldfファイルのディレクトリがprodに存在することは知っていますが、ファイル自体は存在しません。[OK]をクリックして復元する前に[オプション]タブに移動すると、次のエラーが表示されます。
エラー3241:デバイス 'E:... bak'のメディアファミリの形式が正しくありません。SQL Serverはこのメディアファミリを処理できません。RESTORE FILELISTが異常終了しています。
誰もが明るいアイデアを持っていますか?