本人不小心将Sqlserver2005某张表中修改了数据,怎么还原

本人不小心将Sqlserver2005某张表中修改了数据,怎么还原,第1张

1、找备份文件还原到另一个数据名,然后导出数据来覆盖或更新。

2、如果没有备份文件只有回忆一下修改的步骤或修改的内容,看不能不返向 *** 作来处理。如果是删除那就无法恢复,

3、建议在修改数据前备份数据库,如果不想备份,可能用 select into new_table from table 来快速备份。

前提条件

-- 将 数据库的恢复模式(Recovery mode)设置为  “完整(Full)”

-- 此 *** 作可以在  SQL Server Management Studio 中, 选择数据库, 鼠标右键, 属性后,在 选项 标签中进行设置。

USE [master]

GO

ALTER DATABASE [test] SET RECOVERY FULL WITH NO_WAIT

GO

-- 完整备份数据库

backup database test to disk='e:\test_20130704dat'

GO

已为数据库 'test',文件 'Test' (位于文件 1 上)处理了 376 页。

已为数据库 'test',文件 'Test_log' (位于文件 1 上)处理了 3 页。

BACKUP DATABASE 成功处理了 379 页,花费 1151 秒(2571 MB/秒)。

 测试数据 

USE [test]

GO

-- 创建测试表

CREATE TABLE test_br_table (

  ID   int,

  VAL  VARCHAR(10),

  PRIMARY KEY(ID)

);

GO

INSERT INTO test_br_table  VALUES (1, 'TEST1');

INSERT INTO test_br_table  VALUES (2, 'TEST2');

INSERT INTO test_br_table  VALUES (3, 'TEST3');

GO

SELECT GETDATE()

GO

-----------------------

2013-07-04 16:44:12393

(1 行受影响)

-- 假设误 *** 作, 删除所有的数据了

DELETE FROM test_br_table

GO

(3 行受影响)

 恢复  

USE [master]

GO

-- 步骤1 备份当前数据库的事务日志:

BACKUP LOG [Test] TO disk= N'e:\test_log' WITH NORECOVERY

GO

已为数据库 'Test',文件 'Test_log' (位于文件 1 上)处理了 9 页。

BACKUP LOG 成功处理了 9 页,花费 0046 秒(1486 MB/秒)。

-- 步骤2 恢复一个误删除之前的完全备份:

RESTORE DATABASE [Test] FROM DISK = N'e:\test_20130704dat' WITH NORECOVERY,  REPLACE

GO

已为数据库 'Test',文件 'Test' (位于文件 1 上)处理了 376 页。

已为数据库 'Test',文件 'Test_log' (位于文件 1 上)处理了 3 页。

RESTORE DATABASE 成功处理了 379 页,花费 0828 秒(3574 MB/秒)。

-- 步骤3 将数据库恢复至误删除之前的时间点:

RESTORE LOG [Test] FROM  DISK = N'e:\test_log' WITH  STOPAT = N'2013-07-04 16:44:12393' , RECOVERY

GO

已为数据库 'Test',文件 'Test' (位于文件 1 上)处理了 0 页。

已为数据库 'Test',文件 'Test_log' (位于文件 1 上)处理了 9 页。

RESTORE LOG 成功处理了 9 页,花费 0013 秒(5258 MB/秒)。

 核对数据 

use [Test]

GO

SELECT  FROM test_br_table

GO

ID          VAL

----------- ----------

          1 TEST1

          2 TEST2

          3 TEST3

(3 行受影响)

上面为 SQL Server  2008 下面 *** 作的记录,  SQL 2000 下面, 不知道行不行了

如果是刚删除,可以找数据恢复工具回复,如果不会可以花钱找专门的公司恢复数据,一般来说数据刚被删除只会删除文件分配表而不会删除数据体,只要恢复被删除的文件分配表了数据自然恢复,数据要真正被删除需要做覆盖 *** 作,如果做了覆盖 *** 作,那么就需要专业的数据恢复公司做数据痕迹恢复,一般来说要完全消除数据痕迹需要磁盘被覆盖7次以上,当然如果要做到阻止数据恢复可能一次覆盖就够了,当然着看运气。

以上就是关于本人不小心将Sqlserver2005某张表中修改了数据,怎么还原全部的内容,包括:本人不小心将Sqlserver2005某张表中修改了数据,怎么还原、SQL2000数据库被误重写了,怎样恢复到之前MDF和日志文件都完好没有破坏,在线等...、数据库被删除要怎么恢复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9308671.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存