この人頭いいなと思ったエピソード

SQL Server2012 Expressで作成したデータベースをUSBメモリにバックアップしました。
最近、マシントラブルでドライブが死んだので、SQL Serverも入れ直し、データベースをリストアしようとしましたが、うまくできません。
具体的には、データベースを右クリックして「タスク」→「復元」→「データベース」として、デバイスを選ぼうとすると、バックアップファイルの拡張子がbakとtrnとなっており、USBメモリに記録されているmdfとldfではありません。
すべてのファイルを表示させ、それらを選択しても、データベースの復元ダイアログのOKボタンがグレーアウトのままです。
「タスク」→「復元」→「ファイルおよびファイルグループ」なのかな?と思って、やってみてもやはり、拡張子が違います。
同じようにmdfとldfを選択してみると、
「デバイス'データベース名.mdf'のメディアファミリが正しい形式ではありません」
「RESTORE HEADERONLYが異常終了しています。(エラー:3241)」
とのダイアログが出て復元できません。
私はバックアップを失敗したのでしょうか?
何とか、一部のデータでも復元できないでしょうか?
よろしくお願いいたします。

A 回答 (3件)

> SQL Server2012 Expressで作成したデータベースをUSBメモリにバックアップしました。


[タスク]→[復元]メニューで復元できるのは、[タスク]→[バックアップ]でバックアップしたデータです。
(この方法でバックアップを取ったのならbakファイルができているはずです)

従って、mdfファイルとldfファイルからデータベースを復元するには
別の方法をとる必要があります。
このあたりを参考にしてみてください。
http://oshiete.goo.ne.jp/qa/4614355.html
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
参考ページの通りにやってみましたところ、データベースは復元できましたが、なぜか中身がありませんでした。
決定的にバックアップが失敗していたのかも知れません。
仕方が無いので、コツコツと作り直すことにします。
この度は本当にありがとうございました。

お礼日時:2013/10/30 05:18

こんにちは。



どんな方法でバックアップを行ったかは分かりませんが、
普通にバックアップを行うと「bak」,「trn」拡張子で作成されます。

「mdf」,「ldf」のファイルがありましたら、「ATTACH」で復元することができます。

利用方法は下記のとおりです。

CREATE DATABASE [データベース名] ON
( FILENAME = N'D:\SQL_Data\DBFileName.mdf' )
,( FILENAME = N'D:\SQL_Data\DBFileName_log.ldf' )
FOR ATTACH
GO

例えば、データベース名が「LogDB」だとしたら

CREATE DATABASE LogDB ON
( FILENAME = N'D:\SQL_Data\LogDB.mdf' )
,( FILENAME = N'D:\SQL_Data\LogDB_log.ldf' )
FOR ATTACH
GO

こんな感じになるかと思います。

FILENAMEのパスは正しく入力してください。
またUSBにあるファイルをサーバーにコピーしてからご利用ください。
上記のパスにUSBを指定してしまうと復元するデータベースがUSBと繋がってしまいますので、ご注意ください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
アタッチをGUIでやってみましたところ、データベースは復元できましたが、なぜか中身がありませんでした。
決定的にバックアップが失敗していたのかも知れません。
仕方が無いので、コツコツと作り直すことにします。
この度は本当にありがとうございました。

お礼日時:2013/10/30 05:25

通常拡張子mdfはデータベース本体でldfはログその物です。

バックアップとはどのようにされてのでしょうか、本体のバックアップはBACKUP DATABASEを使いログはBACKUP LOGを使って行います、このバックアップファイルで戻すのが「復元」(RESTORE)です。データベース本体その物を戻す場合はUSBメモリからHDD上にファイルをコピーしておいて「アタッチ」で対応します。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
アタッチにて、復元したところ、データベースは復元できましたが、なぜか中身がありませんでした。
決定的にバックアップが失敗していたのかも知れません。
仕方が無いので、コツコツと作り直すことにします。
この度は本当にありがとうございました。

お礼日時:2013/10/30 05:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す


おすすめ情報