2011-08-29 10 views
3

私はベストプラクティス、効率的な方法を探しています。 1ヶ月に1回、本番データベースを開発用にコピーする必要があります。だから可能ならばこのプロセスを自動化することを考えています。本番SQLデータベースのコピーを作成するには?

ログファイル(完全リカバリモード)を使用した約20GBのデータベースのサイズ。

詳細をお知らせください。

+0

:ここ

は、MS SQL Server用のスクリプトの例ですか? OS? –

+0

sql server 2008 r2 10.50.1600.1 –

答えて

4

とにかくデータベースの定期的なバックアップを作成していることを望みます。
基本的には、最新のバックアップを取って別のサーバーで(別のデータベース名で)復元するだけです。

私の職場では、MS SQL Serverを使用しており、これも実行しています。
メインデータベースは毎晩午後9時にフルバックアップされます。
毎日午後11時に、別のサーバーのSQL Serverエージェントジョブがバックアップフォルダから最新のバックアップを取り、OurMainDatabase_Yesterdayとして復元します。 RDBMS /バージョン

ALTER DATABASE OurMainDatabase_Yesterday SET SINGLE_USER WITH ROLLBACK IMMEDIATE 

USE master 

EXEC sp_detach_db 'OurMainDatabase_Yesterday', 'true' 

-- use today's backup from the main server 
declare @BackupPath as nvarchar(500) 
set @BackupPath = '\\MainServer\backup\OurMainDatabase\OurMainDatabase_backup_' 
    + convert(varchar(10),getdate(),112) + '2100.BAK' 

RESTORE DATABASE OurMainDatabase_Yesterday 
    FROM DISK = @BackupPath 
    WITH MOVE 'OurMainDatabase_Data' 
    TO 'F:\Data\OurMainDatabase_Yesterday_Data.mdf', 
    MOVE 'OurMainDatabase_Log' 
    TO 'G:\Logs\OurMainDatabase_Yesterday_Log.ldf', 
    REPLACE 

ALTER DATABASE OurMainDatabase_Yesterday SET MULTI_USER 
+0

自動バックアップの作成方法は?そのためにエージェントジョブを使用することはできますか? –

+0

はい、バックアップをとるための保守計画を作成することができます。このビデオを見る:http://technet.microsoft.com/en-us/sqlserver/Video/dd430301 –

関連する問題