备份还原问题

suiyanpeng 2011-05-19 05:06:34
备份还原的问题,我不太清楚,请解答的学哥姐具体点,一定结帖,谢谢了!!
随便举个例子:
    2011年5月6日 星期三 晚上 12:00 准时做的完整备份;
       5月7日 星期四 上午 9:05 差异备份;
       5月7日 星期四 上午 10:00 做的日志备份;
  因为公司有业务需要有数据不断的进入那个数据库,所以 5月7日 星期四 上午 10:20分,小王把不小心把某个表给删除了或者是把某条记录给弄没了。
  我想知道的是把10:20以前的公司真实的全部数据都恢复出来,具体怎么做啊,这个好像是恢复时间点的问题, 我就是时间点不明白,请解答的人士,写清楚时间点恢复的代码,越详细真好,谢谢,请指教。
...全文
619 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
rucypli 2011-05-20
  • 打赏
  • 举报
回复
完整备份是备份时的数据状态
差异备份是上次完整备份之后的数据修改(物理页得修改)
日志备份是上次日志备份之后的数据更改(逻辑修改)
shinesky 2011-05-20
  • 打赏
  • 举报
回复
謝謝﹗
billpu 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 shinesky 的回复:]

請問 加勒比小飞猪 or abcjun188
假設5月7日有完全備份﹐今天為10號早上十點﹐其間沒有再做過任何備份﹐那么
backup log <database> to disk=<......> with norecovery
restore database <database> from disk=<......> with norecovery
restore log <dat……
[/Quote]
对 理论来说是这样的,但是日志备份还是建议时间间隔不要太长,最好周期放到你认为可以接受数据丢失的期间
shinesky 2011-05-20
  • 打赏
  • 举报
回复
需要再開一貼?
shinesky 2011-05-20
  • 打赏
  • 举报
回复
請問 加勒比小飞猪 or abcjun188
假設5月7日有完全備份﹐今天為10號早上十點﹐其間沒有再做過任何備份﹐那么
backup log <database> to disk=<......> with norecovery
restore database <database> from disk=<......> with norecovery
restore log <database> from disk=<......> with stopat='時間', recovery

這樣理論上是不是可以恢復7日到今天十點前任一個時間點的數據?
打一壶酱油 2011-05-19
  • 打赏
  • 举报
回复
表示不回滚。。。。等到你全部备份都还原后再回滚
上午 10:00 做的日志备份 ,所以你还需要再做一次日志备份才能有 10:20 的数据

剩下的操作 看8楼
suiyanpeng 2011-05-19
  • 打赏
  • 举报
回复
在问下,时间过了,我怎么才能知道,我什么时间把表删了,时间怎么判断,谢谢了,8楼,请解答下,我会结帖的。
suiyanpeng 2011-05-19
  • 打赏
  • 举报
回复
8,9楼,我问下,第1个 后面的with norecovery 是什么意思啊
billpu 2011-05-19
  • 打赏
  • 举报
回复
第一句是backup log
billpu 2011-05-19
  • 打赏
  • 举报
回复
1 backup database ....to disk=..... with norecovery
2 restore database ... from disk=..... with norecovery
3 restore database ... from disk=....with DIFFERENTIAL,nocovery
4 restore log ... from disk=... with stopat='2011-05-07 10:19:59',recovery
suiyanpeng 2011-05-19
  • 打赏
  • 举报
回复
请哪位用代码做,谢谢了,我这方面不太懂
billpu 2011-05-19
  • 打赏
  • 举报
回复
按照如下方法恢复,代码就不写了 也可以查询分析器或ssms操作
1 再次进行尾日志备份(也就是表格被删后,再次日志备份)
2 恢复全备份
3 依次恢复日志备份(如果前一次日志备份已经截断了)
4 用restore log的stopat关键字把时间定到表格被删除前
Ubuntu_Fedora 2011-05-19
  • 打赏
  • 举报
回复
  依次还原这3个到一个新的库上,
2011年5月6日 星期三 晚上 12:00 准时做的完整备份;
       5月7日 星期四 上午 9:05 差异备份;
       5月7日 星期四 上午 10:00 做的日志备份;


找到删掉掉表或数据插入到正式库?????
shinesky 2011-05-19
  • 打赏
  • 举报
回复
依次恢復完全備份(NORECOVERY)-->差異備份(NORECOVERY)-->日志備份(RECOVERY)﹐但星期四上午10點后的數據這樣是恢復不了的﹐可嘗試用log_explorer來恢復。
suiyanpeng 2011-05-19
  • 打赏
  • 举报
回复
这是什么
Zoezs 2011-05-19
  • 打赏
  • 举报
回复
Zoezs 2011-05-19
  • 打赏
  • 举报
回复
完整还原/

RESTORE DATABASE TestDB
FROM AdventureWorks2008R2Backups
WITH MOVE 'AdventureWorks2008R2_Data' TO 'C:\MySQLServer\testdb.mdf',
MOVE 'AdventureWorks2008R2_Log' TO 'C:\MySQLServer\testdb.ldf';
GO

34,591

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧