首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建生产SQL数据库的副本?

如何创建生产SQL数据库的副本?
EN

Stack Overflow用户
提问于 2011-08-29 20:03:48
回答 1查看 2K关注 0票数 3

我正在寻找最佳实践,高效的方法。我需要每月复制一次我的生产数据库到开发。所以我在想,如果可能的话,让这个过程自动化。

包含日志文件的数据库大小约为20 of (完全恢复模式)。

如果我需要提供更多细节,请让我知道。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-29 20:16:36

无论如何,希望你能定期备份你的数据库。

因此,您基本上只需要获取最新的备份并将其恢复到不同的服务器上(并且可能使用不同的数据库名称)。

在我的工作场所,我们正在使用MS SQL Server,而且我们也在这样做:

我们的主数据库每天晚上9点备份(完全备份)。

每天晚上11点,另一台服务器上的SQL Server代理作业会从备份文件夹中获取最新的备份,并将其还原为OurMainDatabase_Yesterday

以下是MS SQL Server的示例脚本:

代码语言:javascript
复制
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
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7229799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档