介质失效恢复时,对运行记录中上一检查点以前的已提交事务应该redo否?为什么?

扎瓦菜鸟 2016-01-11 08:05:43
假设运行记录与数据库的存储磁盘有独立失效模式
...全文
1221 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
efasd12 2021-06-21
  • 打赏
  • 举报
回复

18级的也来了,需要的,原因下面的学长讲了

zoeJzy 2020-01-03
  • 打赏
  • 举报
回复
17级的来了,我觉得是需要的,介质失效数据库被破坏了,课件里说到需要更新磁盘,加载最近后备副本后提交的所有事务,必要时需要redo,所以应该是需要redo的
SEUOrange 2019-01-05
  • 打赏
  • 举报
回复
16的也来辣,学长们好呀,我觉得14的学长说的挺有道理的
Frankie辉 2018-05-28
  • 打赏
  • 举报
回复
好的,15级的来了。试卷真是代代相传
corvofeng 2017-06-15
  • 打赏
  • 举报
回复
楼上的学长好, 我是14级的, 没想到也看到了学长们的问题, 真是感慨. 我感觉是需要的, 以磁盘坏道为例, 介质失效后, 没有办法确定是哪一个扇区出现了坏道, 无法确定数据库出现的错误是在什么地方. 检查点的设立是为了我们在系统失效时可以快速恢复, 因为这个时候我们可以确定磁盘上的数据的不一致部分: 上一个检查点后进行的操作将会影响磁盘的某一部分, 而这部分就属于系统失效时的不一致部分. 因而可以将上一个检查点之后提交的事务的后像写入数据库. 我们需要从上一次的磁盘备份进行恢复, 然后redo从上一次磁盘备份以来所有的操作, 才能够解决问题. 欢迎接下来的学弟学妹们提意见.
kr401092006 2016-07-22
  • 打赏
  • 举报
回复
引用 2 楼 wwt_jieyu 的回复:
[quote=引用 1 楼 kr401092006 的回复:] 不需要,这类事务在检查单点前已经完成,相关数据已经写入到数据库中,在系统故障发生前不会受影响。所以无需重做
同学你是seu cs的吗[/quote] 是的,我13级,在复习的时候刚好看到这个问题了
三月雨ame 2016-06-11
  • 打赏
  • 举报
回复
希望有帮助。
引用
在现代的DBMS中,对介质失效一般都提供恢复数据库至最近一直状态的恢复措施,具体恢复过程如下: ① 修复系统,必要时更换磁盘; ② 如果系统(OS和DBMS)崩溃,重新启动系统; ③ 加载最近后备副本; ④ 用档案存储器内运行记录中的后像,重做最近后备副本以后提交的所有更新事务。 ——王能斌《数据库系统教程》第二版上册
_jieyu 2016-06-10
  • 打赏
  • 举报
回复
引用 1 楼 kr401092006 的回复:
不需要,这类事务在检查单点前已经完成,相关数据已经写入到数据库中,在系统故障发生前不会受影响。所以无需重做
同学你是seu cs的吗
kr401092006 2016-06-10
  • 打赏
  • 举报
回复
不需要,这类事务在检查单点前已经完成,相关数据已经写入到数据库中,在系统故障发生前不会受影响。所以无需重做

34,594

社区成员

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

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