中国数据恢复,世界领先硬件设备技术,数据恢复经验,独创硬盘开盘设备和RAID恢复软件平台,服务器数据恢复案例达千例,大公司大品牌让您更放心!
 
 
  >> 数据恢复中心分布
     
 
  杭州数据恢复中心
  北京数据恢复中心
  上海数据恢复中心
  四川数据恢复中心
  温州数据恢复中心
  南宁数据恢复中心
  厦门数据恢复中心
  远程数据恢复
  异地服务流程
 
  >> 最新信息
     
 
  西数数据4TB移动硬盘数据
  希捷500G 开盘数据恢复
  西数4TB WD40NMZW
  希捷ST1000NM0055开盘
  台电240GB 固态硬盘损坏
  主控 SM2258XT 固态硬
  WD西部数据1TB移动硬盘
  服务器硬盘raid 恢复数据
  U盘数据丢失数据恢复
  M.2固态硬盘不认盘数据恢
 
  >> 联系我们
     
  总址:中国*杭州市文三路369号文三数码大厦10楼1007
TEL:0571-56893695 0571-81113353
TEL:0571-56892375/56892373
24小时服务支持:18858197150
 
     
 


 
 
  详细页面  
     
 
 
 
通过LDF文件实现日志回滚将数据恢复
 
 
信息来源:  发布人:  发布时间:[2012-06-04]
 



通过LDF文件实现日志回滚将数据恢复
该方法数据库恢复(www.db-recovery.com)思路
• 1. 创建数据TEST
• 2. 创建表TEMP_01
• 3. 在表TEMP_01中插入100条数据
• 4. 备份现有的数据库
• 5. 再次向表TEMP_01中插入50条数据
• 6. 记录下当前正确数据的时间time1
• 7. 二分钟后模拟数据文件MDF损坏
• 8. 备份数据库尾日志
• 9. 将数据库恢复到time1 时间

/////////////////////////////////////////////////////////////////////////////////
操作步骤
1) 创建数据TEST
CREATE DATABASE TEST

2) 创建表TEMP_01
CREATE TABLE TEMP_01
(
ID [int] NOT NULL PRIMARY KEY,
NAME [datetime] NOT NULL,
ADDRESS varchar(50) NOT NULL
)

3) 在表TEMP_01中插入100条数据
use TEST
declare @i int
set @i=1
while(@i<=100)
begin
INSERT INTO TEMP_01 VALUES (@i,getdate(),’ADDRESS ‘ + convert(varchar(50),@i))
set @i=@i+1
end

查看数据
select * from TEST

4) 备份现有的数据库
--------做一次完整数据库备份
backup database TEST to disk =N’f:\db-recovery\TEST.bak’

5) 再次向表TEMP_01 中插入50条数据
use TEST
declare @i int
set @i=101
while(@i<=150)
begin
INSERT INTO TEMP_01 VALUES (@i,getdate(),’ADDRESS ‘ + convert(varchar(50),@i))
set @i=@i+1
end

查看数据
select * from TEMP_01

) 记录下当前正确数据的时间time1
当前时间为:2009-8-21 15:18:33
7) 2分钟后模拟数据文件损坏
停止SQL SERVER 服务 net stop mysqlserver
删除TEST.mdf 文件
新建文本文件,并重命名为:TEST.mdf
启动SQL SERVER 服务 net stop mysqlserver
数据库TEST无法打开,证明已损坏
备份数据库尾日志
启动 sqlcmd 管理工具
备份尾日志
backup log TEST to disk=N’f:\db-recovery\aaaa.bak’ with no_truncate
解释一下no_truncate的作用:
如果数据库处于离线状态并且无法启动。
尝试执行尾日志备份。由于此时不会发生任何事务,所以 WITH NORECOVERY 是可选的。如果数据库受损,请使用
WITH CONTINUE_AFTER_ERROR 或 WITH NO_TRUNCATE。
BACKUP LOG database_name TO [WITH { CONTINUE_AFTER_ERROR | NO_TRUNCATE }
重要提示:
除非数据库受损,否则不建议使用 NO_TRUNCATE。
具体的用法参看MSDN
9) 将数据库恢复到time1时间
–恢复最后一次正常配置
在sqlcmd中执行如下语句进行恢复
restore database test from disk=’f:\db-recovery\TEST.bak’ with norecovery
restore log test from disk=’f:\db-recovery\aaaa.bak’ with recovery
解释一下 with norecovery 和 with recovery的作用
NORECOVERY
每当您准备对数据库继续执行还原操作时,请使用 NORECOVERY。NORECOVERY 使数据库进入还原状态。这确保了数
据库在尾日志备份后不会更改。
RECOVERY
将数据库从恢复状态改变到正常状态
具体参看MSDN
http://www.db-recovery.com/tong-guo-ldf-wen-jian-shi-xian-ri-zhi-hui-gun-jiang-shu-ju-hui-fu.html
数据文件已经恢复!



关闭】 【返回上页
 

 

 

登记用户信息
和硬盘信息
免费检测,
进行故障评估
客户沟通,
进行价格议定
工程师开始
恢复数据
成功后通知客户
进行数据核对
冠翔科技关爱
硬盘服务

 

 
 

 
  合作媒体: 杭州移动硬盘维修  |  绍兴数据恢复  |  杭州硬盘维修  |  杭州服务器数据恢复  |  杭州数据恢复  |  杭州数据恢复服务  |  硬盘维修  |  硬盘数据恢复  |  杭州服务器数据恢复  | 
版权所有:杭州冠翔科技有限公司 备案号: 浙ICP备12013365号-3
总址:中国*杭州市文三路369号文三数码大厦10楼1007 TEL:0571-56893695 0571-81113353
TEL:0571-56892375/56892373 24小时服务支持:18858197150