首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何恢复到两天前所做的SQL备份?

如何恢复到两天前所做的SQL备份?
EN

Server Fault用户
提问于 2009-11-11 18:00:51
回答 4查看 1.4K关注 0票数 3

数据库灾难只发生在其他人身上,对吗?对吗?!?

我相信自计算机历史开始以来,这从未发生在任何人身上,但不管你信不信由你,我在数据库恢复方面遇到了问题。也许你能帮忙。我希望这是件很简单的事。

问:如何恢复到两天前所做的备份?

GUI似乎不起作用,我也找不到合适的TSQL手动操作。

详细信息

2009年11月9日星期一上午9:30左右,我使用使用以下选项备份了Server 2005数据库:

恢复模式:简单

备份类型:完全

备份组件:数据库

在:0天后到期

目的地:磁盘

我想恢复这个备份,但我遇到了一些问题。

尝试#1:使用GUI

在“还原数据库”对话框中使用下列选项:

到数据库:MyDatabaseName到一个时间点:‘11/9/200912:00:00上午0毫秒从数据库:MyDatabaseName覆盖现有的数据库: true。恢复状态:保持数据库准备使用回滚.

错误消息:无法获得独占访问,因为数据库正在使用。我试图设置为single_user、重新启动Server服务等,但始终找不出如何终止还原数据库GUI中的现有连接。

尝试#2:使用TSQL

ALTER MyDatabaseName设置SINGLE_USER并立即回滚

ALTER MyDatabaseNameSET完全恢复

从磁盘恢复数据库MyDatabaseName = N'F:\DatabaseLocation\BackupName.bak‘WITH FILE = 1,NOUNLOAD,RECOVERY,REPLACE,STATS = 10,STOPAT = 'Nov 9,2009’

消息:此备份集包含在指定时间点之前记录的记录。数据库处于还原状态,因此可以执行更多前滚。

我尝试过以上不同版本的替换,NORECOVERY,恢复等。我需要知道备份时间到确切的毫秒吗?如果是的话,我该怎么找呢?

EN

回答 4

Server Fault用户

回答已采纳

发布于 2009-11-11 18:06:49

您无法还原到及时指向一个简单的恢复数据库。只有完整或批量恢复模式数据库才能恢复到指定时间。

有关特定语法,请参见恢复到特定的时间点 (该选项是在还原日志时指定的,而不是在还原数据库时指定的)。有关停止AT使用的更多通用要点,请参见将数据库还原到备份中的点

票数 2
EN

Server Fault用户

发布于 2009-11-11 18:23:19

您可以很容易地从GUI中删除现有的连接。只需转到Management ->活动监视器即可。按数据库进行排序,右键单击并杀死您希望还原的数据库中的用户。

编辑

当然,这都是假设您的帐户没有使用相同的数据库作为默认的!如果是这样的话,你会想要改变它和重新连接的第一个。

票数 1
EN

Server Fault用户

发布于 2009-11-11 18:08:08

你有没有试过

1-停止Server。

2-删除或移动到另一个地方的物理文件崩溃的数据库(.mdf和.log)。

3-启动Server。

4-负载备份

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/83704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档