SQL原数据库被覆盖还原,以前的数据能找回来吗

2025-03-16 17:07:47
推荐回答(5个)
回答1:

SQL原数据库被覆盖还原,以前的数据能找回来,找回方法为:

1、打开SQL Server软件后,我们点击下拉菜单中的还原数据按钮。

2、接下来我们可以看到这样的一个还原窗口。

3、在这里我们可以设置我们数据库的源对象。设置完毕后我们还需要设置他的目标源文件。

4、我们可以直接点击确定按钮即可以开始还原数据库。

回答2:

恢复过程:
使用工具是LogExplore,(下载地址:http://five.ttdown.com/L/Log%20E ... verv%20v3.21.KG.exe)
安装后打开log explorer file=>attach log file->选择服务器和登陆方式->connect->
选择数据库->attach->左面对话框中browse->view log->就可以看到log记录,
点击“View DDL Commands”里面就有很多drop table 命令
点击下面的“undo”按钮是生成表结构的语句(create table ....)
点击下面的“Salvage”按钮是生成插入语句的(insert into ...values....)
“Salvage”来生成被删除表的Insert语句,实际上用这个方法生成的SQL脚本已经包含了CreateTable。该过程速度大概用8个小时。
把Date文件夹的Log和.MDF文件拷出来
新建一个数据库,先试着用SQL查询分析器运行了一个小表的脚本,完全没有问题。但后来发现导入比较大的SQL脚本文件,查询分析器就报错了。请教了realgz得知logExplorer本身对大脚本有良好支持,因此改用LogExplorer--》Run SQL Script 功能来运行脚本。果然大文件也可以恢复了。
但开始运行后发现包含有ntext字段的表恢复起来异常缓慢,打开一个包含nText字段的表的恢复脚本发现里面使用writeText来写入数据。恢复一个30万数据的表居然用了将近12小时的时间,而数据库中又有大量这样的表,为了加快数据,我又在几个机器上装了LogExplorer加入恢复过程,终于经过3天的时间,全部的表都搞的差不多了,不过恢复过程有少量的错误。
接下来我将几个机器的表导到同一个数据库中,不过此时恢复的表是没有包含索引、标识等扩展属性的,因此需要重新建立索引、标识、默认值以及触发器。在建立主键的时候发现居然有数据重复。。。没办法只好删除重复数据。
使用 select distinct * into t_New from t_Old 可以删除重复数据,但遇到有ntext字段的表是不能用这个方法的,最后只好用 Delete From t_Table Where ID IN (Select ID From t_Table a where (Select Count(*) From t_Table a where a.ID = ID ) > 1 )直接删除了有重复数据的记录
经过72小时的努力,99.9%的数据恢复。

回答3:

以前你的数据库的日志文件还在不 也被覆盖了咩?

回答4:

如果你没有做A数据库的备份的话,那么就没有办法了~!

回答5:

好象是找不回来了。你看看原库的MDF和LDF文件还有备份吗