自分のソフトウェアに対して自分のDBをテストしたいのであれば、DBとログファイルをコピーしてテストしただけで以前のファイルを復元できますか?DBのクイックバックアップを作成して以前のバージョンに復元するには?
DBは安全でしょうか? DBは現在オフラインで、クライアントはありませんが、私はそれを傷つけたくないので、元のバージョンを復元するための速い方法が必要です。
残念ながら別のDBを作成できません。だから私はこの1つだけで働くことができます。
自分のソフトウェアに対して自分のDBをテストしたいのであれば、DBとログファイルをコピーしてテストしただけで以前のファイルを復元できますか?DBのクイックバックアップを作成して以前のバージョンに復元するには?
DBは安全でしょうか? DBは現在オフラインで、クライアントはありませんが、私はそれを傷つけたくないので、元のバージョンを復元するための速い方法が必要です。
残念ながら別のDBを作成できません。だから私はこの1つだけで働くことができます。
バックアップは、取得された時点のデータベースのコピーです。フルバックアップを行う必要があります。https://msdn.microsoft.com/en-us/library/ms186289.aspx
これは私が知っているどのデータベースエンジンでも機能します。完全にデータベースをバックアップし、スクリプトを実行し、復元することができます。そうすれば、データベースをスクリプトを実行する前と同じようにすることができます。
ところで、バックアップを実行するためにデータベースをオフラインにする必要はありません。ただし、リストアを実行するとデータベースはオフラインになりますので注意してください。
これは、DBのバックアップへの迅速なスクリプトは次のとおりです。
SET @fileName = <Backup path> + <Backup file name> + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
私の心配は、DBを復元するそのプロセスのスピードについてです。 サイズが30GBを超えるDBでは十分高速ですか? これらのDBファイルをコピーすれば十分で安全でしょうか? – Wiktor
データベースを接続解除してから再度接続しない限り、ファイルをコピーすることはできません。復元は高速ですが、もちろんサーバーによって異なります。 1つのコアと2 GBのRAMを搭載したサーバーで30 GBのデータベースを復元する必要がある場合は、ほとんどの場合時間がかかります。 64コアRAMとRAID 10を搭載した16コアのデータベースを復元する場合は、数秒かかる場合があります。データベースのサイズはパフォーマンスを知る尺度ではありません。どれくらい時間がかかるかを知る必要がある場合は、データベースをオフラインにして実行に要する時間を確認してください。 – asemprini87
おそらくあなたは以下をチェックすることができます:https://www.brentozar.com/archive/2010/02/how-to-make-sql-server-backups-and-restores-faster/ – asemprini87