我试图从生产环境中的数据库移动到一个新的生产环境。
未来的环境有一个旧版本的当前督促环境,我现在迁移旧的。
岂不是更好,更可靠,如果:
我知道都是选项,但我需要知道哪一个提供了最好的结果是:由于没有留下给出的,这是一个关键的数据库闪失,和关键任务系统的最佳定义。
我不感兴趣的差异数据库,我只想当前数据库中的全部移动 - 干净和轻松。
更多信息:
最近,我问过类似的问题。我不同意对方的回答:分离和挂接数据库是不是一个好主意。首先,你必须把它脱机 - 第二,你需要为其他职位指出,停止服务。备份和恢复是最安全的方法。
选择使用sp_detach_db分离数据库,然后使用CREATE DATABASE将其固定... FOR ATTACH;或分离和附加使用GUI将实际分离从源服务器上的数据库。
很多事情可以去错在这里,这就是为什么我们喜欢的备份和恢复。备份过程是在线和自源数据库从未在第一时间做出未提供,你不危险的错误,数据损坏,或任何其他的东西,可能发生的情况下摧毁任何东西。
看看这个question,让你你需要的一切。
在SQL Server中的备份/恢复过程很简单和容易。如果你有一个现有的数据库,选择恢复,它将取代它。如果它不存在,它会添加。
我建议去sp_detachdb - 复制 - sp_attachdb路线。
注意:
该** @ keepfulltextindexfile **参数将在SQL Server的未来版本中删除。
而这个过程是不兼容天青。
你写了:
我有一个2小时的窗口
因此,这将是更好的,而不是sp_detachdb
只是停止SQLServer的服务 - 拷贝数据库文件的新服务器上,并使用比sp_attach_db
/ CREATE DATABASE .. FOR ATTACH
阅读微软的文档关于这一主题 - Move a Database Using Detach and Attach (Transact-SQL)