通过从备份还原,无法使用新名称创建数据库副本:“数据库正在使用中”

时间:2018-10-23 13:55:14

标签: sql-server database backup database-backups sql-server-2017

我有两套用于不同测试环境的数据库(内部qa和uat)。我正在尝试通过从最新的uat备份中恢复qa来使它保持最新状态。我遇到了一个问题,原因是qa数据库陷入“还原”模式并最终将其删除,因此我现在尝试通过从UAT备份还原并更改名称来创建一个全新的数据库,但是它一直失败。 / p>

  

还原数据库

     

来源:设备> LatestUATbackup.bak

     

目标:数据库>将名称从UAT.Web更改为Dev.Web

     

文件>选中所有文件重新定位到文件夹

     

选项:关闭与目标数据库的现有连接

“数据库Dev.Web的还原失败。由于正在使用数据库而无法获得访问权限”

我尝试使UAT.Web脱机,但是失败,并显示错误“ UAT.Web无法打开,因为它处于脱机状态”

为什么在使用备份时数据库是否正在使用?我该怎么办?

2 个答案:

答案 0 :(得分:0)

您无法还原正在使用的数据库,因为还原会使数据库处于不一致状态。您需要从数据库断开所有活动的连接(包括所有SSMS查询窗口和其他应用程序)才能恢复它。如果已经存在,请确保在还原窗口的“选项”选项卡上选中“覆盖现有数据库”。

在旁注中,由您决定,但我建议您不要使用'。在数据库名称中。使用包含数据库的标准对象名称时,可能会造成混淆。

答案 1 :(得分:0)

在还原之前,转到“选项”并勾选“关闭与目标数据库的现有连接”选项。