- ベストアンサー
SQLServerバックアップが復元できない!バックアップファイルの拡張子が違います
- SQL Server2012 Expressで作成したデータベースをUSBメモリにバックアップしましたが、復元できません。
- バックアップファイルの拡張子がbakとtrnとなっており、USBメモリに記録されているmdfとldfではありません。
- バックアップを失敗したのでしょうか?何とか、一部のデータでも復元できないでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> SQL Server2012 Expressで作成したデータベースをUSBメモリにバックアップしました。 [タスク]→[復元]メニューで復元できるのは、[タスク]→[バックアップ]でバックアップしたデータです。 (この方法でバックアップを取ったのならbakファイルができているはずです) 従って、mdfファイルとldfファイルからデータベースを復元するには 別の方法をとる必要があります。 このあたりを参考にしてみてください。 http://okwave.jp/qa/q4614355.html
その他の回答 (2)
- innoya
- ベストアンサー率71% (10/14)
こんにちは。 どんな方法でバックアップを行ったかは分かりませんが、 普通にバックアップを行うと「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と繋がってしまいますので、ご注意ください。
お礼
回答ありがとうございます。 アタッチをGUIでやってみましたところ、データベースは復元できましたが、なぜか中身がありませんでした。 決定的にバックアップが失敗していたのかも知れません。 仕方が無いので、コツコツと作り直すことにします。 この度は本当にありがとうございました。
- 原沢 信道(@nharasawa)
- ベストアンサー率53% (90/168)
通常拡張子mdfはデータベース本体でldfはログその物です。バックアップとはどのようにされてのでしょうか、本体のバックアップはBACKUP DATABASEを使いログはBACKUP LOGを使って行います、このバックアップファイルで戻すのが「復元」(RESTORE)です。データベース本体その物を戻す場合はUSBメモリからHDD上にファイルをコピーしておいて「アタッチ」で対応します。
お礼
回答ありがとうございます。 アタッチにて、復元したところ、データベースは復元できましたが、なぜか中身がありませんでした。 決定的にバックアップが失敗していたのかも知れません。 仕方が無いので、コツコツと作り直すことにします。 この度は本当にありがとうございました。
お礼
回答ありがとうございます。 参考ページの通りにやってみましたところ、データベースは復元できましたが、なぜか中身がありませんでした。 決定的にバックアップが失敗していたのかも知れません。 仕方が無いので、コツコツと作り直すことにします。 この度は本当にありがとうございました。