数据库-第10章数据库恢复技术

1.事务的概念

       事务是用户定义的一个数据库序列,这些操作要么全做、要不不做,是一个不可分割的工作单位。

2.事务的特性(ACID)

       A:原子性,一个事务要么全做,要么不做;

      C:一致性,事务执行的结果必须让数据库从一个一致性状态到另一个一致性状态;

       I:隔离性,一个事务的执行不能被其他事务干扰,并发执行的各个事务之间互不干扰;

      D:持续性,一个事务一旦提交,它对数据库中数据的改变就会被写入磁盘,就是永久性的了。

3.故障的种类

      事务内部的故障:这里指非预期的故障(运算溢出、并发事务发生死锁撤销这个事务、违反了完整性限制而被终止);

      系统故障:造成系统停止运转的任何事件,使得系统需要重新启动(CPU故障、操作系统故障、DBMS代码错误、系统断电)

      介质故障:系统故障被称为软故障,介质故障被称为硬故障。比如磁盘损坏....

      计算机病毒:一些恶作剧者研究的计算机程序,会对计算机系统造成危险。

4.恢复的实现技术(本质就是‘冗余’)

    数据转储:静态转储、动态转储、海量转储、增量转储

    登记日志文件:登记的次序严格按并发事务执行的时间次序;必须先写日志文件,后写数据库

5.恢复策略

   事务故障的恢复:反向扫描日志文件,对该事务的更新操作执行逆操作,一直处理下去,直到该事务的开始标志。

   系统故障的恢复:正向扫描日志文件,找出故障前commit的事务装入重做队列,找出故障发生时未完成的事务装入撤销队列,

                                重做队列(正向扫描日志文件)做redo,撤销队列(反向扫描日志文件做逆操作)做undo。

   介质故障的恢复:重新安装数据库,然后重做已经完成的事务。

6.具有检查点的恢复技术

     检查点记录内容:(1)建立检查点时刻所有正在执行事务的清单;(2)这些事务最近一个日志记录的地址。

                   检查点之前commit或者显式rollback的不用任何操作;

                   故障之前commit的redo,显式rollback的undo;

                   故障之后全部undo。

7.数据库映像(mirror)

恢复子系统的作用:

       因为计算机系统中硬件的故障、软件的错误、操作员的失误以及恶意的破坏是不可避免的,这些故障轻则造成运行事务非正常中断,影响数据库中数据的正确性,重则破坏数据库,使数据库中全部或部分数据丢失, 因此必须要有恢复子系统。

       恢复子系统的功能是:把数据库从错误状态恢复到某一已知的正确状态 。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值