数据修复案例

/*--数据修复案例  
   
  如何在数据库文件损坏(日志文件完好)情况下,进行恢复  
   
  --(收藏整理)--*/  
   
  --测试步骤  
   
  --1.建一个测试数据库test  
  create   database   test  
  go  
   
  use   test  
  go  
   
  --2.建一个表,插入记录  
  create   table   a(c1   varchar(2))  
  insert   into   a  
  select   'aa'  
  union   all   select   'bb'  
  go  
   
  --3.作完全备份,到文件:c:/a.bak  
  backup   database   test   to   disk='c:/a.bak'   with   init  
   
  --4.做一些修改  
  insert   into   a   values('cc')  
  go  
   
  create   table   b(c1   int)  
  insert   into   b  
  select   1  
  union   all   select   2  
  go  
   
  /*--以下操作不能在查询分析器中进行  
   
  --5.停止SQL服务数据库服务器  
   
  --6.用ultraedit编辑数据库文件test_data.mdf,随便修改点字节内容  
   
  --7.启动数据库,并且运行企业管理器,点开数据库,看到test变成灰色,而且显示置疑。  
   
  --下面的操作回到查询分析器中--*/  
   
  --8.进行日志备份  
  use   master  
  go  
   
  backup   log   test   to   disk='c:/a.bak'   with   no_truncate  
  go  
   
  --9.恢复最老的完全备份  
  restore   database   test   from   disk='c:/a.bak'   with   norecovery,replace  
  go  
   
  --10.恢复最近的日志  
  restore   log   test   from   disk='c:/a.bak'   with   file=2,recovery  
  go  
   
  --11.显示结果,看数据是否恢复  
  use   test  
  go  
   
  select   *   from   a  
  go  
   
  select   *   from   b  
  go  
   
  --12.清除测试环境  
  use   master  
  go  
   
  drop   database   test  
  exec   master..xp_cmdshell   'del   c:/a.bak',no_output  
   
  /*--测试结果(证明恢复成功)  
  c1        
  ----    
  aa  
  bb  
  cc  
   
  (所影响的行数为   3   行)  
   
  c1                      
  -----------    
  1  
  2  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨航 AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值