如何在MSSMS中还原我的SQL Server数据库?

问题描述

我备份了数据库,但选择将其保存到C盘上自己的位置,而不是认位置。从那里我也将其复制到USB记忆棒。所以我有旧数据。但是如何恢复呢?

我不小心删除了很多我需要返回的记录。我在MSSMS中没有看到“撤消”选项,也没有看到“回滚”选项。

那是我的第一个想法(尝试撤消或回滚)。所以我去做一个“恢复”,但是失败了。

这是我尝试过的:

enter image description here

我尝试使用显示认设置,但是单击“确定”按钮后,我得到了:

enter image description here

我认为这可能是因为我没有备份到认位置,而是备份到了硬盘驱动器。因此,我尝试通过选择“设备”单选按钮,然后单击此处的省略号按钮来访问C盘上的备份文件

enter image description here

...然后从我放置它的文件夹中选择文件

enter image description here

...但是我仍然收到“恢复失败”

我的下一个尝试(也是我想尝试的最后一件事)是转到USB记忆棒(D驱动器)。

因此,我再次单击了省略号点按钮,删除了上一个条目(C驱动器)并添加了D / usb棒,然后选择了相同的文件

enter image description here

我选择“确定”,然后在这里再次确定:

enter image description here

...但是,第三次是个诅咒,可以这么说:再次,我收到“数据库恢复失败”的信息

enter image description here

我还尝试了还原,而不是数据库,而是文件

enter image description here

...但是得到了:

enter image description here

还原数据库必须是可能的-毕竟,我确实备份了两个副本。但是如何?

解决方法

由于您正在SSMS中查看数据库,因此该数据库被认为正在使用中。

您有两个选择。

  • 进行还原时(在左侧)在“选项”表中,请确保选中“关闭现有连接”框。 (请注意,您可能还需要勾选一些有关覆盖现有数据库的内容。)
  • 还原到新数据库(例如FixToFams4_RESTORE_20201015),而不是覆盖旧数据库,然后将需要的数据从还原的数据库转移回原始数据库。

后者是 MUCH 更安全,是我的首选,除非您乐意将备份完全恢复到备份时的状态。

如果您使用第一种方法,强烈建议在还原到旧版本之前先备份当前数据库,以防万一您需要做一些工作(例如创建的过程等)。

,

MS SQL Server论坛上可以做的另一件事(由于该问题已经解决,现在对我来说很重要)是运行以下命令:

RESTORE DATABASE db FROM DISK = 'C:\Path\YourBackup.bak'

SQL Server专家还提供了this link

...以及他们的其他建议here