一位同事在 SSMS(SQL Server 2005)中执行还原时,用生产数据库覆盖了测试数据库。他意识到自己错误地设置了还原路径,并取消了操作。此时数据库从 SSMS 中消失了。测试数据库 .mdf 和 .ldf 文件仍在其预期位置。我认为数据库已分离并尝试重新连接它。我收到错误“无法连接与现有数据库同名的数据库”。我尝试使用 sa 和 Window 登录名使用各种客户端连接到数据库,但没有成功。我们尝试重新启动 SQL Server 并重新启动服务器,但测试数据库没有重新出现。
日志中唯一有趣的是三条条目,表明 SQL Server 遇到了缓存存储刷新的情况。
我对 SQL Server 的了解有限。有没有什么办法可以让我们的测试数据库重新运行,或者删除它的所有迹象,以便我可以用相同的名称重新创建它?
答案1
只需再次执行恢复,检查恢复屏幕第二个选项卡中的 REPLACE 选项。当恢复取消时,旧数据库就消失了,新数据库只是部分恢复。如果刷新对象资源管理器,它应该会从列表中删除,因为它不在那里。它可能显示为恢复状态,我不确定引擎会如何处理它。在这两种情况下,如果不进行另一次恢复,数据库将无法使用。
答案2
一位顾问(他来做其他工作)试图通过恢复来帮助我们解决这个问题。我不在场,我的同事,一个 SQL Server 新手,没有按照他的做法去做。也许这是 mrdenny 建议的。这并没有解决数据库未显示在 SSMS 中的问题。然而,第二天我决定再次尝试连接数据库,这次成功了。我没有在重新启动 SQL Server 后尝试连接数据库,所以我不知道是重新启动、恢复还是两者的结合解决了问题。