如何在从新版本的备份文件还原之前明确清除数据库

UnL*_*uys 5 sql-server migration sql-server-2012 sql-server-2017

我们是一个数学家团队(即,没有 DBA 经验)。

我们正在从旧服务器盒 (SQL Server 2012) 迁移到新服务器盒 (SQL Server 2017)。对于旧服务器上的每个数据库,我们制作了一个备份副本,将其移植到新服务器,并从备份文件中将其恢复到完整的数据库荣耀。

到现在为止还挺好。

但是,我们的入住日期有所延迟,我们仍在使用旧服务器。随着我们继续在旧服务器上工作,这些数据库中的更改继续累积。因此,这意味着位于新服务器上的复制数据库现在已过时且已过时。(讽刺,不是吗?)

对于那些已更改的数据库,我们知道我们最终必须制作新的备份副本并将其移植到新服务器上。

到了时候,在恢复最新的备份副本之前摆脱新服务器上那些现在已经过时的数据库的最聪明方法是什么?

我们担心如果我们不小心,使用相同的名称,可能会发生一些遮挡或遮蔽。在恢复最新版本之前,我们希望确保新服务器上的过时副本完全消失。

Kev*_*3NF 6

只需在您的还原命令中使用 WITH REPLACE,它就会覆盖目标上的现有数据库。简单,大功告成。您可以先 DROP,但这不是必需的。

WITH REPLACE 是 T-SQL 关键字,对应于恢复数据库 GUI 中的“覆盖现有数据库”(为该线程的未来读者添加)

哦……你在运行 2017 年的 RC 版本吗?RTM 直到下周一 10 月 2 日...只是事后的想法。