- ベストアンサー
バックアップの復元
早速ご教示ください。 例えば、テーブルA,テーブルB,テーブルC・・・・テーブルZまでテーブルがあるデータベース(TEST_db)があるとします。 【流れ】 (1)TEST_dbの完全データベースバックアップをとります。 (2)テーブルC~テーブルFをDELETE FROM文で削除します。 (3)上記(1)でとったバックアップファイルから(2)で削除したテーブルC~F を復元できますでしょうか? できるのであれば、その方法を、できないのであればなにか提案を宜 しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>とりあえず今知りたいのは、削除箇所のみをフルバックアップファイルからリストアできるかどうか、とその方法が知りたいのです。 そこがポイントなんですね。物理構成単位(ページなど)の部分的なリストアならできますが、テーブルという論理構成単位でのリストアはできないです。
その他の回答 (3)
- jamshid6
- ベストアンサー率88% (591/669)
削除したあとでリストアする真意がわからないのですが、 別にバックアップ・リストアにこだわらないならば、該当テーブルのコピーを取っておいたらどうですか? SELECT * INTO テーブルC_bak FROM テーブルC SELECT * INTO テーブルD_bak FROM テーブルD SELECT * INTO テーブルE_bak FROM テーブルE SELECT * INTO テーブルF_bak FROM テーブルF 同一インスタンスならば、別DBにコピーしておいてもいいです。 それでよければINSERT~SELECTで戻せますけど。
- 3rd_001
- ベストアンサー率66% (115/174)
完全バックアップから上書きでリストアすると、 AからZすべてのテーブルがバックアップ時の状態に戻ります。 これは許容できるのでしょうか? CからFのみリストアしたいのであれば、別データベースに リストアして、そこからインポートする必要があるのでは? A、B、G~Zを上書きするかどうかがポイントですね。 上書きしてもいいなら単純にリストアすればよいかと。 SQL文でもエンタープライズマネージャーでも可能かと。
補足
後者希望ですね。 C~Fのみをリストアしたいのです。 やはり、別DBにリストア⇒そこからインポートになるのですか~。 ん~。 他に処理速度も速く、安全で、C~Fのみをリストアする方法ってないものでしょうか。 例えば、SQL文でC~FのみをTEST_dbへ復元するみたいな。 ないですかねー。
- bodyshot
- ベストアンサー率14% (46/326)
バックアップをリストアするだけなので間違いなく可能ですが、 SQLの種類によってやり方が違ってくると思います。 具体的なやり方が知りたいのであればソフト名をお願いします。
補足
ご回答ありがとうございます。 SQL Server 2000になります。 ご教示の程宜しくお願い致します。
補足
リストアを体験したいかったのですよ。 全て上書きするより、削除した箇所のみを追加した方が、効率がいいかなぁ~って思いまして。素人考えで申し訳ない。 とりあえず今知りたいのは、削除箇所のみをフルバックアップファイルからリストアできるかどうか、とその方法が知りたいのです。 INSERT~SELECTでの方法は別件で勉強になりました。